Staredit Network > Forums > SC1 UMS Theory and Ideas > Topic: My recent EUD tools - epScript
My recent EUD tools - epScript
Dec 12 2016, 12:54 am
By: trgk  

Dec 12 2016, 12:54 am trgk Post #1



epScript - Script language for eud

Example code:


import stages.py_timeline;

import stages.pattern01;
import stages.pattern02;
import stages.pattern02_var;
import stages.pattern03;

import player.lifesys as lSys;

const stagesFuncs = [
pattern02.funcs, // Basic tutorial
pattern02_var.funcs, // Basic tutorial 2
pattern01.funcs, // Thing
pattern03.funcs,
0
];

////////////////////////////////

var currentStage = 0;
const currentStageProc = EUDFuncPtr(0, 0)();
var isGameCompleted = 0;

function nextStage() {
if(isGameCompleted) return;
const stageFuncs = stagesFuncs[currentStage];
currentStage++;
if(stageFuncs == 0) {
isGameCompleted = 1;
return;
}

KillUnit('(any unit)', Force2);
RemoveUnit('Avoider', Force1);
lSys.createPlayers();

const stageFunc2 = EUDArray(stageFuncs);
const stageName, stageStarter, stageProc =
DBString(stageFunc2[0]),
EUDFuncPtr(0, 0)(stageFunc2[1]),
EUDFuncPtr(0, 0)(stageFunc2[2]);

SetCurrentPlayer(getuserplayerid());

const buffer = DBString(50);
const k1 = dbstr_print(buffer, "\x0F#", currentStage, ". \x04");
dbstr_addstr(k1, stageName.GetStringMemoryAddr());
DoActions(buffer.GetDisplayAction());
EUDFuncPtr(0, 0)(stageStarter)();
currentStageProc.setFunc(stageProc);
}

function gameCompleteProc();

function runStageProc() {
// Staging
if(currentStage == 0 || Bring(Force1, AtLeast, 1, 'Avoider', 'stageEnd')) {
nextStage();
}
if(isGameCompleted) {
gameCompleteProc();
return;
}
(currentStageProc)();
}

function gameCompleteProc() {

}


epScript compiles your javascript-like code to python code.
Python code can be compiled to starcraft triggers using eudplib.


Just some recent news. I'm encountering numerous bugs to catch day by day, so this is something very far from release.

Of course all of my tools require EUDA + 1.16.1 version of starcraft.

Repo here



EUD

Dec 14 2016, 8:34 pm Wormer Post #2



So, is it an example of code resulting from from epScript to feed for eudplib?



Some.

Jan 6 2017, 3:33 pm trgk Post #3



It is the code being fed to epScript.
epScript then outputs something like this

Collapsable Box


Resulting python code is then fed to eudplib to generate triggers.



EUD

Jan 20 2017, 8:05 am verssuss Post #4



how can i got this eudeditor 2
http://cafe.naver.com/edac.cafe?iframe_url=/ArticleRead.nhn%3Fclubid=17046257%26page=1%26menuid=223%26boardtype=L%26articleid=49215%26referrerAllArticles=false



None.

Options
  Back to forum
Please log in to reply to this topic or to report it.
Members in this topic: None.
[05:47 pm]
Ultraviolet -- zsnakezz
zsnakezz shouted: ultra you have any thought or notes on undead invasion?
I still haven't gotten a chance to play it yet unfortunately. I just downloaded, but today I'm working on a project with a deadline so won't be able to play it today
[04:59 am]
zsnakezz -- >:)
[04:59 am]
zsnakezz -- :)
[04:58 am]
zsnakezz -- somebody gets it
[04:58 am]
zsnakezz -- and its not all just numbers in my file screen
[04:57 am]
zsnakezz -- thank you for your comment though, good to know some people out there tried my map out
[04:57 am]
zsnakezz -- just kidding
[04:57 am]
zsnakezz -- ultra you have any thought or notes on undead invasion?
[2024-5-31. : 2:36 pm]
Wing Zero -- Bop em
[2024-5-31. : 2:36 pm]
Wing Zero -- Mods
Please log in to shout.


Members Online: Roy