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.
[2026-9-14. : 3:21 pm]
Oh_Man -- Racoon City Remastered*
[2026-9-14. : 3:21 pm]
Oh_Man -- Join the front line SEN, DEFEND MANKIND. 2030 is just a number! https://scmscx.com/map/2fHHj96p
[2026-9-14. : 3:21 pm]
Oh_Man -- from the maker of the legendary Architect RPG, the peerless Racoon City, the capitvating One Piercing Note, comes another creation minutes in the making
[2026-9-14. : 11:15 am]
Oh_Man -- heh heh thanks for the minerals suckers, now it's time to quit while i'm ahead
[2026-9-14. : 1:01 am]
Oh_Man -- Heroes of the Storm literally died and was revived before we got next SC game. Wb Loveless, u cooking any UMS for us?
[2026-9-13. : 11:35 pm]
LoveLess -- getting diablo 5 and wow 4 before starcraft ghost
[2026-9-13. : 9:22 pm]
RIVE -- To be fair, I used to post custom emotes back when I still used the forums.
[2026-9-13. : 12:54 pm]
l)ark_ssj9kevin -- RIVE
RIVE shouted: 💯
holy shit did you just use an emoji on SEN that feels illegal 🍆
[2026-9-13. : 10:24 am]
Moose -- Heinermann
Heinermann shouted: new era of SC and it's just some shooter they're gonna cancel before 2030
StarCraft 2: Ghost 2, The Reghostening
[2026-9-13. : 3:38 am]
Symmetry -- :wob:
Please log in to shout.


Members Online: Symmetry