I am currently working on an own compiler named SCUMSLang (pronounced S-C-U-M-S-Lang).
The project, the upcoming binaries and also the source code can you view at https://github.com/SCUMSLang/SCUMSLang (MIT).
But you can also join the SCUMSLang community server at discord (who is first? ).
I want to supersede LangUMS (https://github.com/LangUMS/langums) because it has some limitations and minor bugs. The greatest limitation is actual a design decision. LangUMS lets fire triggers in a huge "queue"/"state machine"/"pipeline" so every trigger of any player is dependent on another trigger. When a trigger needs more time than other, it will affect its following triggers negatively. So my vision is to implement triggers in many "queues"/"state machines"/"pipelines" so it won't affect other player's triggers. Moreover I want to implement a sleep method that takes advantage of hyper triggers/complex hyper triggers.
Approximately Features of SCUMSLang (✅ means implemented)
- Pretty the same features like LangUMS
- Written in C# (✅)
- Independable state machines but dependent on those they have to be
- Enum types (e.g. Player.Player1, Player.Force1 and so on) (✅)
- Statically types (e.g. int, short, byte, bool, string, or concrete enum type) (✅)
- Integer pool with overflow detection
- Function overloading (✅)
- Side effectless sleep()
- Better IDE integration with in-code API documentation
- Chocolatey (package manager) support
My motivation is to create a new complex CPU Mouse map without partially digging into SCMDraft and put some triggers inside to make triggers to work that got procuded by LangUMS. For example is the mathematical "while (randomLocation > 64) { randomLocation = randomLocation - 64; }"-expression somewhat slow and delays all following triggers like spawning SCV Dropper when you build a Protoss Nexus in-between the delay. There is also the straaaaaange bug, that my Protoss Probe is sometimes stucking in Protoss Pylon because of such delays. Here a reference to the CPU Cat map I am talking about: CPU Cat Revival.
The current state of the project is not usable but I really would like to hear your opinion about the project!
Post has been edited 8 time(s), last time on Feb 17 2021, 2:14 pm by Teroneko.
None.