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.
[01:56 am]
Oh_Man -- cool bit of history, spellsword creator talking about the history of EUD ^
[09:24 pm]
Moose -- denis
[05:00 pm]
lil-Inferno -- benis
[10:41 am]
v9bettel -- Nice
[2024-4-19. : 1:39 am]
Ultraviolet -- no u elky skeleton guy, I'll use em better
[2024-4-18. : 10:50 pm]
Vrael -- Ultraviolet
Ultraviolet shouted: How about you all send me your minerals instead of washing them into the gambling void? I'm saving up for a new name color and/or glow
hey cut it out I'm getting all the minerals
[2024-4-18. : 10:11 pm]
Ultraviolet -- :P
[2024-4-18. : 10:11 pm]
Ultraviolet -- How about you all send me your minerals instead of washing them into the gambling void? I'm saving up for a new name color and/or glow
[2024-4-17. : 11:50 pm]
O)FaRTy1billion[MM] -- nice, now i have more than enough
Please log in to shout.


Members Online: Oh_Man, Roy