Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

Strategy Game Collaboration

Name: =+=*=F=R=O=Z=E=N==V=O=I=D=*=+= !frozEn/KIg 2009-07-19 0:46

Experimental RTS/Space sim Collaborative Coding Project.
The goal is to design a game with structure/settings/balance of Starcraft and scale of Eve Online(i.e. huge space battles, space empires,etc).
Though this wouldn't stop anyone from contributing code/feedback/criticism, i'll be coordinating the project.
All code/ideas should be posted in this and subsequent threads which i'll start as needed.
step #1: We will collaboratively create a name for our project.
Each suggestion must explain why this name fits the project and why its better then any other generic name.

Name: Anonymous 2009-07-22 12:56

A C program does straightforward thing:It start executing code,loading variables.
Lisp would have to: setup its VM and load the "worldscript" image,then run the image.

Anyway, if you can use SBCL to work by scheme in >>323
and willing to explain how its done, it will be accepted again for consideration.

A lisp file is compiled to a fasl(native code at this point), a fasl can be loaded into the core image(symbols/code/data from the fasl are now inside the core image memory), then you dump the core/wrold image, maybe tree-shake it if you want first, and get a new core file, which contains just your code and the needed functions from the implementation. This yields a small loader exe and the .core image which contains the code of the game and whatever is needed from the libraries. If you truly require one single exe, you could combine the main exe with the core image, which would only change the place from where the exe loads the compiled functions/data.

1.A batch file is run with this command inside: compiler -flags main.program
2.It produces  Main.exe (in other platforms other formats)
3.Main.exe runs, standalone and without any further requirements.

Building in CL is usually done using ASDF, but it can be done by calling COMPILE manually too, so everything is done from LISP, all you have to do is execute something like (compile "file.lisp") or (asdf:oos :load-op :system-name). If you want to save the system image you will have to look up your implementation's documentation to find the command for doing that. It was save-lisp-and-die for SBCL(on Windows, this command needs a bit more preparation if you have external imports from other libraries, but it's nothing hard to automate.)

If you require a bat for doing this, all you have to do is just run sbcl with the proper command line which loads a script which loads/builds/prepares image/tree shakes and saves the core, and you would get a new image. If you want it all in one executable, go get the SBCL source code and modify the loader so it would load the core from resources or from the executable's overlay, then build it.

THESE ARE ALL TRIVIAL MATTERS.
IHBTE

Newer Posts