Dear friends,
I'm glad to introduce my current project, "Railways" : a railroad management game.
I'm using CPCtelera.
(http://s24.postimg.org/pyfrxwwrp/Sans_titre1.png) (http://s2.postimg.org/s2eli18fd/Sans_titre2.png)
Why this game ? Because I believe that management is an under-represented genre on CPC. And because trains are fun !
Although I'm on early development stage, I would like to share the first results to get back your feelings.
Be indulgent, it is my first development for the CPC platform !
The code is available on my github account : Trewdbal/Railways - GitHub (https://github.com/Trewdbal/Railways)
Direct link to download the .dsk : https://github.com/Trewdbal/Railways/raw/master/railways.dsk (https://github.com/Trewdbal/Railways/raw/master/railways.dsk)
The map is proceduraly generated.
Move the cursor with arrow keys.
Press Enter for the in-game menu.
Actually, you can add stations (rotate it with space bar), build railways (change pattern with space bar), get information about a tile, destroy a tile.
For the moment, it does not work on 464. Maybe memory issues...
Looks like Railroad Tycoon!
Yes, I was thinking that. I played Transport Tycoon a LOT, and was especially amused by the railway options.
Actually, still got the game set up on one of my PCs.
I think that TT, like some other games of like vintage, has been re-incarnated by 'fans', who have substantially re-written the system to be multi-platform, but avoid too many copyright problems by requiring that you have the original game, as the new version requires many of the original graphics files.
Same thing happening with my even bigger favourite, Settlers II. I spend many hours playing that. Too many hours. A number of summer nights just vanished, I started playing about 10 pm, and next thing, I realised it was starting to get light next morning!!
Not got the right machine for this one, mind you. Mind you, could do the tracks on the PCW??
Geoff
It looks very nice! These games are usually not my cup of tea, but this one seems very promising and neat :D
Wow ! Nice idea and work in progress.
for the 464 issue: i got it to work on WinAPE in 64k os464 amsdos configuration:
(http://www.cpcwiki.eu/forum/data:image/png;base64,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)
-> looking at the source code:
maybe you could bring draw_cursor and draw_tile "together" - to save some dozen bytes :)
Thank you for your messages !
Indeed, my current project is clearly inspired from Railroad Tycoon game mechanics.
What I done until now is related to the environment, so it was relatively easy.
A critical task will be coding the path of the trains. Maybe with graphs ?
Quote from: GeoffB17 on 00:12, 04 February 16
I think that TT, like some other games of like vintage, has been re-incarnated by 'fans', who have substantially re-written the system to be multi-platform, but avoid too many copyright problems by requiring that you have the original game, as the new version requires many of the original graphics files.
OpenTTD is the best clone of Transport Tycoon Deluxe, and I believe you don't need original graphics files. You should have a look if you liked the original.
For my part, I played a lot with Railroad Tycoon 2, which is IMHO the best game of the RT franchise.
Quote from: GeoffB17 on 00:12, 04 February 16
Not got the right machine for this one, mind you. Mind you, could do the tracks on the PCW??
GeoffB17, I don't know the specifications of the PCW enough to say if it would be possible without a considerable effort.
Quote from: SRS on 16:56, 04 February 16
for the 464 issue: i got it to work on WinAPE in 64k os464 amsdos configuration:
(http://www.cpcwiki.eu/forum/data:image/png;base64,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)Interesting ! I used Arnold and it doesn't work. I get a red screen which seems to be a memory corruption.
Quote from: SRS on 16:56, 04 February 16
-> looking at the source code:
maybe you could bring draw_cursor and draw_tile "together" - to save some dozen bytes :)
Thank you for spotting that 8) . I will have a look.
Looks promising! Keep the good work going! :)
Niiice 8)
Nice work, @Trewdbal (http://www.cpcwiki.eu/forum/index.php?action=profile;u=1642). Your made a lot of things work in very few time. :D
I've tested it in a 464 and it works flawlessly: don't know why it shouldn't work. How did you test it?
After looking at your code, I'd give you two advices mainly:
- Remove any piece of code from header files. Split your code so that all your definitions and code are in .c files. Leave only declarations on your header files to let other files know about your symbols.
- As @SRS (http://www.cpcwiki.eu/forum/index.php?action=profile;u=805) says, there are some functions with quite similar code. Always try to generalize your functions and reuse them. This will save a lot of bytes of code in the long run. Sometimes, making functions more general will make them slower. Take this into consideration only when functions are critical parts of your code (parts that are used frequently).
We will be glad to help whenever you need it :) . Keep up with this nice project! :D
Edit: Another interesting thing you may want to try is random number generators included in latest CPCtelera version (master branch on github). You may use cpct_rand and cpct_srand same way as rand(), srand() C generators, but with rand() giving you random 8-bit numbers. These latest functions do not require you to be giving entropy bytes and pass all Dieharder tests, so they will be very useful for your procedural world generation :).
Ah not my cup of tea, but it's always so nice to see new things being developed!
Quote from: ronaldo on 21:25, 04 February 16
Nice work, @Trewdbal (http://www.cpcwiki.eu/forum/index.php?action=profile;u=1642). Your made a lot of things work in very few time. :D
Thanks to your efficient software, I've been very productive indeed !!
Quote from: ronaldo on 21:25, 04 February 16
I've tested it in a 464 and it works flawlessly: don't know why it shouldn't work. How did you test it?
I test it with arnold under my computer on linux. It crashes at the beginning.
As nobody encounters problems, I suppose it's due to the emulator.
Quote from: ronaldo on 21:25, 04 February 16
We will be glad to help whenever you need it :) . Keep up with this nice project! :D
Thank you very much ! Advices and feedbacks are very useful.
By the way, I will take into account ASAP your remarks on my code.
I'm happy to know that you propose now a more convenient random number generator.
With the entropy byte, it was like you need random numbers to get random numbers !
I will build the latest version right now, and update my code.
cpct_randu16 and cpct_randu32 are not working yet ?
Quote from: Trewdbal on 14:35, 06 February 16
I test it with arnold under my computer on linux. It crashes at the beginning.
As nobody encounters problems, I suppose it's due to the emulator.
Please would you share the dsk with me? I will find why arnold crashes.
Thankyou.
EDIT: Sorry, I didn't read your first post fully. I see the dsk is there.
I don't see a crash, which arnold are you using. The wip one?
Quote from: Trewdbal on 14:35, 06 February 16
I test it with arnold under my computer on linux. It crashes at the beginning.
As nobody encounters problems, I suppose it's due to the emulator.
Some of
CPCtelera (http://lronaldo.github.io/cpctelera) examples also fail on arnold, while they all work on WinAPE and the real machine. I hope to be able to help @arnoldemu (http://www.cpcwiki.eu/forum/index.php?action=profile;u=122) fix these issues in next releases of arnold. However, at its present status, I'd recommend you to use WinAPE. You can easily use the built in command
cpct_winape to automatically install and launch winape with any DSK on Linux (you need wine).
Quote from: Trewdbal on 14:35, 06 February 16
I'm happy to know that you propose now a more convenient random number generator.
With the entropy byte, it was like you need random numbers to get random numbers !
I will build the latest version right now, and update my code.
cpct_randu16 and cpct_randu32 are not working yet ?
Well, the first random number generator was an extremely simple LCG that I included in a fast way to have something "random". However, new random generators included are high-quality: I've invested a lot of time selecting, optimizing and testing them.
As they are on the master branch, they are not reflected on 1.2.3 documentation (which is now online). However, you can check the implemented algorithms here:
cpctelera/random.h at master · lronaldo/cpctelera · GitHub (https://github.com/lronaldo/cpctelera/blob/master/cpctelera/src/random/random.h)
You've got
cpct_rand32 and
cpct_rand16 which will give you 16 and 32 bits random numbers, and are working perfectly. All these symbols are MACROS that refer to the real algorithms
cpct_getRandom_mxor_u(8,16,32). These are based on Marsaglia's XOR-Shift, and all of them use the same seed. Therefore, there is a unique stream of 32-bits values and you will be picking 8, 16, 32 bit values from there.
Please, check the documentation of each algorithm to know more of them. Documentation is always included in the header part of each source file associated to each algorithm.
Quote from: arnoldemu on 15:45, 06 February 16
I don't see a crash, which arnold are you using. The wip one?
I'm using arnold-nurgle-x86_64-2009-03-17.
@ronaldo (http://www.cpcwiki.eu/forum/index.php?action=profile;u=1227) : Thanks. random functions works like a charm !
And the cpct_winape command is very useful.
Try this version of arnold:
arnold wip (http://www.cpcwiki.eu/forum/emulators/arnold-wip/)