| Posted By
Toxitalk on 2008-10-20 04:31:41
| The same question asked about a million times no doubt
Used to have a commodore +4 (Blah Blah)
Would love to write some games (Blah Blah)
Where do I start?
Thanks
|
|
Posted By
Csabo on 2008-10-20 10:25:12
| Re: The same question asked about a million times no doubt
Welcome to our forum! I don't think this comes up that often actually. Writing a game can be a big undertaking, especially writing one on such a limited platform like the Plussy. I guess where you want to start probably depends on where you are now.
Do you have any programming experience? Have you ever written any games? Have you ever programmed the Plus/4 or another Commodore? What language would you like to write your game in (BASIC/machine code)?
I for one do write games. The ones I wrote in the past come with source code. Perhaps you could look at those, especially the 1K ones since those are relatively short. While it may not teach you everything there is to know, maybe you could get the general idea.
|
|
Posted By
MMS on 2008-10-20 11:50:40
| Re: The same question asked about a million times no doubt
Seeing the parallax scrolling of the "Lone Fly" in the 8 shades of Black demo, I have a questionmark, if the conversion of ANY C64 game would be a problem to Plus/4, as from programming point of view seems all routines already worked out? That demo reminds me to the C64 shadow of the Beast (whcih was told "not possible to convert from Amiga"), in fact the Lone Fly looks more impressive than the C64 version of the "ShadowOB"
|
|
Posted By
indi on 2008-10-20 12:05:54
| Re: The same question asked about a million times no doubt
The lack of hardware sprites makes almost everygame a problem.... (but not impossible....)
|
|
Posted By
Csabo on 2008-10-20 12:51:37
| Re: The same question asked about a million times no doubt
Mike is right, the big problem is the sprites. First on that line of thought: TCFS proved it over and over that it's possible to handle hardware sprites with software sprites nicely. I spoke to him once and he mentioned he had a working system of routines that could handle any number of sprites (not at full framerate of course). It's probably used in one or more of his games. If I had unlimited time, I disassemble all his games and take a closer look... Well, anyway.
Second, about the Parallax effect: it's actually not that difficult to implement. Let me be clear on this: Lone Fly looks awesome, but other demos had parallax effects before. (Our effects page only lists 4 demos, but there's a lot more.) Also, quite a few very old-school games use this effect as well, Moon Buggy for example. Lone Fly is just much better drawn and uses nicer colors, but it's basically the same thing.
|
|
Posted By
Toxitalk on 2008-10-20 14:49:58
| Re: The same question asked about a million times no doubt
My experience is Basic, a little c and ide's like AMOS, STOS, Gamemaker and Flash.
I would probably start with something like a space invaders and go from there.
Is basic going to be fast enough? If not can I have some ideas on where I should be looking.
Cheers
|
|
Posted By
Csabo on 2008-10-20 15:25:30
| Re: The same question asked about a million times no doubt
BASIC can be good enough depending on the genre: adventure, logical, strategy, card, puzzle games would be fine.
Action, platform, shooting games are probably best implemented in assembler.
The middle road is to use a program generator, e.g. Rachy's Adventure Building System, or something like Games Designer or Games Creator. Finally, one other option is to build your game in BASIC, and "compile" it with a nifty piece of software called Austrospeed Compiler - this will speed up the game which yields a performance increase (but can't be as fast as a game written in assembler).
If you want to write something from scratch... I guess in general this forum is the best place, the few remaining people that have the knowledge (and speak English hang out here. There isn't a simple straight resource though, I wish there was. There are books about programming in general (see Publications section). There are games with full source code released. I honestly wish I could share my knowledge with everyone who's interested, the problem actually seems to be that there's no-one who wants to learn what I know. The fact that you came around asking this is actually a lot of fun for me personally, I like to just talk and think about this stuff (and I always come to the realization that our site could be much better). So... I have to write a book I guess? Maybe "we" could do it, as in write the book as a collaboration?
|
|
Posted By
MMS on 2008-10-20 15:52:26
| Re: The same question asked about a million times no doubt
Actually someone before mentioned a C compiler for plus/4. I think -because it is the closest thing- could be fast enough, if good C libraries would be built, like Megasprite.h, HowToMakeRaster.h, etc The compiling of a Basic into assembly really speeds up the things, but does not help on the fact, that the BASIC3.5 still too far from the BUT I saw on SPEKTRUM Invader games looked nice and worked well, written in pure Basic, certainly supported by some POKEs and PEEKs. So not a mission impossible. I wish Bill's team would spent more time on the speed optimalization of the Basic routines, Paint and Circle is horrible ) I saw other extensions (eg. Simon's Basic) made it much better and faster way already in 1983. Commodore may have learn from them...
|
|
Posted By
MMS on 2008-10-20 15:59:36
| Re: The same question asked about a million times no doubt
Sorry, lot of unfinished sentences.
So, despite the fast I prefer Pascal over C, it is easier to build up a library close to specific computer than in any other language. After the talented programmers created the perfect libraries, there would be fast and easy way to develop fast programs. Sounds easy in this way, but on Commodore the low memory and missing HDD made it rather complex and time consuming to do the 2-level compilation. That's why I liked the idea of that Lucar mentioned few days ago, to integrate into the Emulator the C compliler. You write the program in the emulator, compile via the emulator with a specific keycombination (in the background all libraries can be used without memory limitations), and the final result is a fast runnable program in PRG format... OK, just dreaming
|
|
Posted By
MMS on 2008-10-20 16:03:56
| Re: The same question asked about a million times no doubt
And the BASIC3.5 is just too far from the programming tools and timings needed for a programmer. I mean no way to check the raster, or make animation or layers possible to manage. I am not a big programmer, but despite the fast I like BASIC and Pascal, the Basic 3.5 makes is very complicated and slow, and if I should choose between Pascal and C to write a game, I would prefer C,as it could be much closer to the assembly than anything else (I just started to hate C when object oriented programming started on windows, I still prefer old-school structured programming with few objects)
|
|
Posted By
MMS on 2008-10-20 16:28:22
| Re: The same question asked about a million times no doubt
http://www.ffd2.com/fridge/programs/blarg/blarg.docs
Interesting: it seems, as Miscosoft developped their commodore basic, it became slower But in fact there is a mistake in the comparison, as stock C64 was not able to draw circle or lines, but was drawing via POKE commands or extensions, like Simon's BASIC. But it si visible when you compare stock C64 and BASIC7.0 (I can say same as BASIC3.5, same team behind) that the 7.0 is 3-50x slower than the simulations done is pure Basic2.0+POKE commands. his is how ame MS was when made this extensions...
It means, that just by using compiler or C/Pascal implementation, graphical drawing commands can be easily 5-10, if not 30 times faster than in raw BASIC3.5.
I never tried it myself, but trust in the reviews
|
|
Posted By
Gaia on 2008-10-20 17:13:50
| Re: The same question asked about a million times no doubt
The plus/4 BASIC is not slow because of Microsoft (although I appreciate the attempt, who knows maybe they are also responsible for the global warming). It is indeed slower than the C64 BASIC despite the machine being slightly faster in machine code and the reason is that in the very last moment (as Bil Herd once explained) they had to build in this memory bank switching they never intended to do, so basically every time there's a RAM read operation, the machine has to disable IRQ, disable ROM, read the RAM, enable ROM again, enable IRQ and return back to the main ROM program block. See the code at $0479 in the RAM for an example.
|
|
Posted By
indi on 2008-10-20 18:30:15
| Re: The same question asked about a million times no doubt
When I started on the plus4 I did a mix of basic and assembler. I used BASIC for the main logic and very small assembler routines to help speed up printing/rendering.
Its also a good way to learn assembler as your only writing very small loops to begin with...
|
|
Posted By
MMS on 2008-10-21 04:20:17
| Re: The same question asked about a million times no doubt
Gaia, thanks for the explanation. BTW, C64 did also some kind of banking, right? Or Plus/4 made it more intensively to have 60K free RAM, while C64 offered only 38k?
And yes, Microsoft is responsible for the global warming in that form, that the PCs power consumption increased drastically due to the newer Opsystem's higher demands, and majority of PCs are running XP. Each PC generates ~100-150W heat in every hour (nowadays 450W OPSU is typical). If we would have a better OS would need less CPU and memory, every PC could use 30-50W less (per hour). Just to remind you: the Amiga500 and 1200 used a 23W PSU (with all the multitask OS, programs and nice games, certainly without HDD and 3D) and Mac Quadra 610 used a 40W PSU. Certainly the specs sounds funny today, but do not forget, that if the OS would not require that CPU power, amount of memory an HDD space, the game developers should have been calculated with much less resources, then they had to finetune it stronger. (see Sony PS1 and PS2)
Eg. GEOS Essemble (multitask, multithread) run on a 8MB 486 very fluent with a lot of nice features and UI, much better than Windows3.0, not to speak about Win95 http://en.wikipedia.org/wiki/GeoWorks UI I would say it is easily comparable with Win Millenium.
|
|
Posted By
Toxitalk on 2008-10-21 08:12:12
| Re: The same question asked about a million times no doubt
I know we are going a bit off key know, but I think The pc and Windows, has set back real computing for many years. Back in the earier 90's the Amiga in pied piper fashion showed people their gui future. With the Amiga, even though the hardware was not advanced by todays standards, visually it was a stunning machine and multitasked years ahead of apple and microsoft. Bills, Steves and IBM's solution was to try and build the same user experience form off the shelf bits. From this moment our planet burning path was set in motion. We all know how small, eco firendly proprierty solutions can be, 'think of the c-one a few years ago', but until we can say 'speak to the hand' to eye candy, theres only one way things will go. (How cool would it be if we could turn our backs on Windows and OSX and just have fun with small footprint computing). I have used most computers since the 80's, and I have the knowledge to use OS like linux. But at the moment I have a desktop dual core Vista machine. As much as I would love to put Ubuntu on it, as its not broke, why would I fix it. No doubt in a couple of weeks, Ill kick Fire Ant and Kikstart to the curb and go back to Runescape and PC gaming.
|
|
Posted By
MMS on 2008-10-21 12:18:25
| Re: The same question asked about a million times no doubt
yeah, became a little too much OFF, not helping too much to you yet (except Csabo and Gaia), I believe,
Sorry it is my fault (
I try to be more focused...
|
|
Posted By
MMS on 2008-10-21 14:36:17
| Re: The same question asked about a million times no doubt
ON: Crown stated in his older demo, that anyone who can write a good demo, would able to program a good tool or game. Well, we have nowadays a lot of really good demos...(unfortunately I cannot do any, I lost that part of my memory related to assembly prg)
|
|
Posted By
indi on 2008-10-21 17:26:14
| Re: The same question asked about a million times no doubt
"Crown stated in his older demo, that anyone who can write a good demo, would able to program a good tool or game."
Thats not true by any means. It takes a different skillset to do a demo, just as doing a game takes a lot of dedication, continuity and a drive that keeps you going through the long dull patches.
I've known many demo coders that just couldn't make it as games programmers, and I'm just not good at making or thinking up demos (well, demos that make people sit up and take notice at any rate...)
|
|
Posted By
Csabo on 2008-10-21 19:55:11
| Re: The same question asked about a million times no doubt
Did he really say that? Which demo was it?
It's an interesting statement nevertheless. I guess the key is in "would be able to" When you write a demo, you can cut a lot of corners. "Good enough" is the keyword. When programming games, you have to be more disciplined, otherwise you end up with buggy, unmaintainable code.
Hey MMS, do you want to get started again? I am seriously considering starting up something like a book, basically a series of chapters dealing with the topics one by one. I guess the best way of teaching how to program a game in assembly would be to actually write one and document it along the way.
About off topic stuff: I think it's okay for some topics, like this one. We're just talking about a bunch of stuff cause it's fun. So here's my off topic "announcement": I have two larger unfinished projects. One is our first megademo, the other one is a game. I've started up working on the game again in the past few weeks and it's so much fun. It's playable, but needs a lot more stuff: hiscore table, options and help, multiple languages, music (probably), maybe a title screen and just general polishing. Maybe I'll need beta testers too...
|
|
Posted By
MMS on 2008-10-22 06:31:41
| Re: The same question asked about a million times no doubt
Hi Csabo, yes I started to look though the "assembly programming for beginners" book, scanned here in Hungarian (not complete), buit as I mentioned beforehand, a C compiler with good libraries would help a lot for such lamers. I need it because: 1) I want to write my own slideshow program weorking fast with 1551 and 1541, and should look nice UI with buttons and mouse cursor (how to execute sprite emulation once explained to me by Pigmy himself, I still have this letter, but no efforts done to realize it --> any help most wecomed) 2) I started to work on a special set of charachter graphics for my all time favourite game, Archon, after graphics is ready, then I will approach this team here to convert the code with an up-to-date graph (to have better graph than the original) with some small improvements. But I am really at the beginning. Only few sprite emulation neded, when action done, it is just pure character-animation, no background. so would fit to Plus/4 well.
BTW, if you need a specific title screen (eg fullscreen) for your game, just let me know, what is the idea you have in your mind (topic, activity to be shown, color scheme,etc), and I will try to make something looks good. But I will do in the way, that use a normal pictures from Google as a basis (not converted from other computer, or yes, PC, edit them on PC), convert it with IstvanV converter, then create the Logo and correct the pixel defects. then you may comment. Thrhouput time is 1 month for first draft. Only in multi or hires Botticelli
|
|
Posted By
MMS on 2008-10-25 14:25:18
| Re: The same question asked about a million times no doubt
Hi Csabo,
It was the Iron Maiden demo, where Crown told that, some decades ago
He did not hide his oponion, he stated just at eh beginnig of his demo, that a"ll demo is a sh*t" Well, actually demos can make our belowed plussy get more respect, although I do remember, when my classmates told in the secondary school: i"ndependently how good demos you show me, till you cannot show such a good game like Train or Accolade's car-games, you can go to ****". Yes, so plussy could have some moe nice games, Bomberman, or XEO can change that in this year. I still want to work on Archon Extra (well, there was Archon Ultra, Archon Evolution, Archon2, what can come next? )
|
|
| |
Copyright © Plus/4 World Team, 2001-2024. Support Plus/4 World on Patreon |