| |
thesuperfrog
Registered: Oct 2016 Posts: 3 |
Script Language
Hi all,
have you ever used a script language to create a game?
I'm very courious to know if it could be possible make the porting the lua on c64.
thanks |
|
| |
Oswald
Registered: Apr 2002 Posts: 5094 |
as c64 is limited your best bet is to tailor your own language for the minimum scripting you need for your game.However I have no experience in this. |
| |
oziphantom
Registered: Oct 2014 Posts: 490 |
I've used LUA on a PS2 and that was a bad idea. C64 not a hope in hell.
That being said I have made games in BASIC. Also some games I've made use a custom byte code to control things, but not a full language. |
| |
Radiant
Registered: Sep 2004 Posts: 639 |
Several games on the C64 have used scripting languages (or something akin to them) for implementing game logic. Most notably adventure and strategy games.
I'd look at something a bit simpler than Lua for that if you want to use an existing language - maybe Forth; it's similar to Lua in that it's stack based, but it's not as fancy pancy and more geared towards low-end platforms. There's an implementation already available: DurexForth V1.6.1 |
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
you could have a look at "small", its another c-style script language, with a supposedly smaller core and also comes with a compiler |
| |
lft
Registered: Jul 2007 Posts: 369 |
Inform 6 is a high-level object oriented language for interactive fiction (i.e. text games), which you can then play on the C64 using Zeugma, although it requires a REU.
Unfortunately Inform 7 (which is a different language altogether, and a quite interesting one) grinds to almost a halt on the C64, due to a massively bloated runtime. |
| |
Hoild
Registered: Apr 2005 Posts: 29 |
Quoting RadiantSeveral games on the C64 have used scripting languages (or something akin to them) for implementing game logic. Most notably adventure and strategy games.
Indeed. Just like NEWCOMER, Enhanced NEWCOMER, and Ultimate NEWCOMER was/is implemented via a Domain Specific Language that evolved slightly with each revision:
http://newcomer.hu/ENCscript-xmpl.html
Actually, I have slightly changed the syntax in this example to make it more legible in English, because the original syntaxes in all three major revisions use a wicked "Hunglish" (Hungarian-English hybrid).
The evolution of this Domain Specific Language involved eliminating extra steps required by the designer due to the laziness of the original toolkit/build chain coder, and replacing awkward hacks with natural/descriptive syntax (for example, the arg for selecting teammembers is now by their name rather than two unique hex values from their name string). |
| |
4mat
Registered: May 2010 Posts: 66 |
Haven't used it for a game but our demo "engine" has a small script language built in for building and controlling each scene. It has a few extra commands for directly manipulating registers, which is kind of inefficient but doing those changes within the script rather than some separate code makes things easier to read. |
| |
Jammer
Registered: Nov 2002 Posts: 1335 |
Enthusi created his own script language for room interaction in 'Caren And The Tangled Tentacles'. |
| |
MagerValp
Registered: Dec 2001 Posts: 1078 |
Quote: you could have a look at "small", its another c-style script language, with a supposedly smaller core and also comes with a compiler
Link? It's completely ungooglable. |
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
http://www.compuphase.com/small.htm ... apparently its called "pawn" now (not sure if that is better to google for... =P) |
| |
Frantic
Registered: Mar 2003 Posts: 1648 |
http://www.compuphase.com/small.htm
...which leads to this page:
http://www.compuphase.com/pawn/pawn.htm
..maybe? :) |
| |
j0x
Registered: Mar 2004 Posts: 215 |
If I'm not mistaken, Small (the scripting language) is now known as Pawn: http://www.compuphase.com/pawn/pawn.htm
I once did a music routine with a scripting language. Tunes were really small in memory (including runtime), but heavy on the cpu time. |
| |
El Topo
Registered: Jun 2006 Posts: 43 |
I don't want to sound like an ass but isn't C64/C128 BASIC a scripting language? :) |
| |
thesuperfrog
Registered: Oct 2016 Posts: 3 |
Quote: I don't want to sound like an ass but isn't C64/C128 BASIC a scripting language? :)
But i'm trying to adopt/create someting more modern.
i would like to experiment the idea to use a 16bit opcodes with registers based instructions. I'm thinking to translate this instructions with relative 6010 opcodes. on top use a language like lua.
An evolution of sweet16 but without a vm, just translate in 8bit opcodes. |
| |
MagerValp
Registered: Dec 2001 Posts: 1078 |
Quote: http://www.compuphase.com/small.htm ... apparently its called "pawn" now (not sure if that is better to google for... =P)
Thank you. "pawn scripting language" gives plenty of relevant hits, so yes, that was a good name change :) |
| |
MagerValp
Registered: Dec 2001 Posts: 1078 |
And as for scripting languages on the C64, I've experimented a bit with it, but in the end I just settled on using C for those parts that don't need the performance of asm. Since projects are limited to a few dozen kB of code you don't really bump into the problems that large C codebases struggle with. The only practical drawback I've found is that, at least cc65, generates code that's a little more bloated than a small VM interpreter or hand written asm. |
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
why not simply use BASIC for scripting? :) |
| |
Jammer
Registered: Nov 2002 Posts: 1335 |
Because its syntax sucks? ;) |
| |
Martin Piper
Registered: Nov 2007 Posts: 722 |
And the BASIC interpreter sprays all over large areas of memory, especially zero page. |
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
easy enough to save/restore that when needed :) |
| |
Frantic
Registered: Mar 2003 Posts: 1648 |
only lamers save/restore when needed. |
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
PROS use SUPERPOKER for scriptz! |