forums

TNT Basic Forums > Games In Progress
The CCII blogthread
< Last Thread     Next Thread >
Author
Thread        Post A Reply

05-02-2008 03:43

Posted by:
Harbinger

Location:
Florida,USA

Click Here to Email Harbinger   Find more posts by Harbinger

A couple of years ago i posted a request for programmers for a project called County Commission, but i was reticent about getting into programming again. I originally wanted a 3D immersive program with very good graphics. The graphics might have been workable, at a cost of CPU, but the math required someone who knew trig very well. It was big enough for a whole team to work on, but we don't have a whole team even paying attention to these forums.

After playing Transport Tycoon Deluxe (the open version) for quite some time, i'm revisiting this idea of creating a game-sim that combines the two concepts: a city builder AND a transportation network manager. I will scale back the 3D idea (and use tiling), but i want this project to be "open" from the beginning, giving developers and tinkerers the chance to amend the game and develop it in its evolution to an outstanding game-sim. I think i can handle the programming, altho it's slow right now as i'm beginning to reacquaint my brain with the logic (remember, i haven't programmed since the 80s with Commodore BASIC!).

To keep County Commission II open and "developable", i need TNT to compile code modules into one large program, and access configuration files (.txt's and .ini's) for maps, list, variables, and algorithms. Graphics will be in a single form (.bmp's indexed to 255 colors), but separated by image banks (such as vehicles.bmp and snowtiles.bmp) that can be "preferenced" from within the initialization module. This will let every single user choose the graphics he wants, the economic model he wants, even the code modules versions he wants. Coders can develop or update the code and instead of rebuilding an entire program, he can check it against a variable list to make sure that there's not a conflict, and then use the STARTUP module to load his altered module. I'm hoping when i look at tbEDIT that this program will allow this to happen.

I'm becoming convinced that TNT will be able to do everything i want (altho i may hafta do some workarounds with the file manipulation limitations). And if all goes well as i expect, the game will get interest in the mac community, especially if nods ever gets TNT2 done (!), and from there we can begin porting. Altho i know nothing about hosting a website, eventually maybe i can start one up, and we can begin a community that spans all platforms and robust interest...

As for me, i'm still using a G3 400mHz under 9.2.2 and NOT on the internet, and using TNT 1.31. I'm hoping TNT2 will make porting to OS X only negligibly difficult, and from there to Windows and Linux. I definitely want anyone to be able to tinker with the program, and completely customize it for their ends. This would be a complete revolution on the gaming market!!

For now, here are some of the programming features i intend to incorporate.

1. Separate code modules and configurations files. The main STARTUP module will be the only code that i want to remain "uncustomizable", as its function is vital and imperative -- it will be responsible for module checking, variable conflict resolution, version checking, file existence, and then code assembly. I believe this will stem from appleide's tbEDIT while a strict hierarchy will be established for files.
2. Configuration files will be in a format easily editable by anyone. Files for which graphics to use, which game preferences to use, which set of preferences, GUI widgets, keys and their functions, etc, etc. There will even be a file which will list all the variables used in the game, so that developers can ADD whole new code sections or MODULES without variable label conflicts.
3. A separate program to create the "world" for the game-sim (the county in County Commission), which will consist of an RGB map that TNT will somehow hafta read and create a tiled canvas. (I've yet to figure out how to read a data from a .bmp file using TNT's limited file reading commands.) This will override the need to have TMAPs set up by developers.
4. A stable build of the original will always be made available by being controlled by the main developer (me). Any other dev's build can share the title but must have its author's label in the build's name (such as "CCII - the Appleide build"). This will let gamers not only know whose is who's, but also allow for popular builds to be easily and separately recognized. Once we have a website, each build gets its own forum section...
5. Canvases for each world layer will make easier to not only keep up with their graphics, but also make switching between them easier. Vehicles and other ancillary animations can use the sprite allotments, while the canvas holds tile images. Windows and other GUI elements can easily be applied to canvases or sprites.
6. The map tiling system has been worked out and is a bit innovative. While the map is a regular cartesian, the data divides each grid square (the space between grid points) into two triangles that hold the data for ground, foliage, construction, and animated tiles. Each square is displayed isometrically and divided into adjacent equilateral triangles. These trangles make for better looking slopes and more realistic terrain and road/rail-ways.

Now for the game features, without divulging too many secrets:

1. A city simulation and business management simulation, with preferences that allow for either or both, or degrees of each.
2. A set of economics and civics models that reflects the American system, but easily adaptable to other cultures. The American system relies more on products in rural areas but more on services in urban or semiurban areas, more of an emphasis on private vehicles rather than public transportation, and a very free-market even conservative economic protocol. (I'm sure that there other differences that nods will alert me to!)
3. Graphics, though tiled, that allow for 16 different land slopes, 15-degree road/rail increments, masks which allow for see-thru foliage and constructions (as well as object view filtering), and up to 65,536 types of buildings, vehicles, and tiles. And with an indexed bitmap format, this makes the total HD space small compared to other graphics formats. (Don't worry, the palette -- also customizable -- will have a thorough array of colors!)
4. SC-like city growth algorithms based on a Demands system, where each structure requires certain services and satisfies others. Certain industries require a traffic network and route management by the player, while the user must also zone the land and help the county grow. (There is no administrative post in the land that would ever control both, but hey, it's just a game!)

I have many other ideas to numerous or secret to list now. But these will be added later. If i ahve questions on code or need help i will post in other threads. This little pseudo-blog will allow me to report on the course of this project as well as take others' input.

If anyone wants to contribute, please do. My only request is that you seek to build not destroy. There will no doubt be problems that arise, but no one wants to hear "you can't do that," but rather "we'll hafta figure out how some other way to solve that problem." Criticisms and ideas are always welcome, as long as it's meant to be constructive and edifying...

05-04-2008 02:47

Posted by:
appleide

Click Here to Email appleide   Find more posts by appleide

Sorry I don't have time to look through all that... gotta go to work....
but you might wanna upgrade to a more recent machine. like a mac intel with leopard, for example. I know its not cheap but.... for the sake of compatibility.

05-04-2008 04:41

Posted by:
Harbinger

Location:
Florida,USA

Click Here to Email Harbinger   Find more posts by Harbinger

Not gonna do it. And yes, it is a matter of compatibility. I have WAY too much software and its documents that are OS Classic only, mostly music and graphics files. Not only can i not spend more money to upgrade the computer and what few applications have an OS X version, i hate OS X. It's like learning assembly language whn you had BASIC. Everytime i look at an OS X file, i can't decipher what is what. The major reason though is that i'm happy with OS 9, simple, still customizable, no learning curves, etc, etc... Not everyone is interested in keeping up with the technological Joneses.;)

However, i will continue to program in TNT Classic, and if all goes well, by the time nods is finished with TNT2 and Apple is at OS11, i MAY switch up to OS X, and porting into the new TNT2 will be easy. I'm programming in such a way to make porting to any language relatively easy. Plus i really think the game will catch on...

05-09-2008 01:34

Posted by:
tntfan3

Find more posts by tntfan3

Wow! That looks like a great game! I lack the knowledge neccesay to be of any real aid to you however I would love to be a viable 'Alpha Tester'.

I have a few mapping questions as I am currently teaching myself BASIC mapping (the mapping totorial was of marginal help to me). I currently have a simplistic scrolling map. My problem is that when I reach a specific x,y coordinate (on my 2D map) my map continuously displays the same thing over and over (the same screen continuously re-scrolls). The said x,y coordinates (where the malfunction occurs) appears to change based on my number of tiles. Any tips and/or help would be greatly apprichiated!

I hope I can also post any more questions I have here as well.

Thank you.

05-09-2008 07:24

Posted by:
Harbinger

Location:
Florida,USA

Click Here to Email Harbinger   Find more posts by Harbinger

Hey, you're not alone. Myself i'm having to reacquaint myself with programming. I'm writing tutorials for various techniques that i'm discovering that'll help me in my program, such as reading .bmp files and using and manipulating the data. Eventually i'll post them somewhere here and let other newcomers benefit from what i'm learning.
I'll tell you that i'm finding out how powerful TNTBasic really is, except in the file manipulation aspect.

If any of you get good enough to handle some programming let me know. If i don't get any help, i'll hafta come up with all the programming and graphics, which means this could be quite a few months before i get anything even remotely workable.

Here are my plans for the next week or so:
1. Test a routine for a.) drawing a map array (not TMAPs) with a simple paint technique, b.)reading a file then drawing based on the file data, and c.) reading a .bmp and drawing certain tiles that exist in a preloaded graphic.
2. Refining the tile based map system i'll be using. So far i anticipate an isometric display for the terrain, but the paths (road/rail) will use a different mapping system, making it more flexible to create intersections, merging lanes, and broad curves.

I'll keep you "posted!"

"Posted!" Get it? "Posted?"....

05-09-2008 21:44

Posted by:
tntfan3

Find more posts by tntfan3

great please do!

05-21-2008 08:01

Posted by:
Harbinger

Location:
Florida,USA

Click Here to Email Harbinger   Find more posts by Harbinger

UPDATE

>>Worked out equations for isometric display, including tile placement and screen size allotment.
>>Prepared graphics to test iso tiles based on z component (land height).
>>Successfully got TNT to read a .bmp and draw out its data. Also figured out the .bmp file format for proper color placement within the image.

Just got promoted at my job, meaning i have less hours to devote to this project, so i anticipate progress will trudge along S L O W L Y . . . .


I've also worked out how i want the road system and land map to coincide: we will use different arrays for different data concerns. The map will be layered and drawn in this order:

Roads
Buildings
Foliage
Land topography (slopes)

However, the Roads and Buildings layers will be drawn according to array points, while foliage and land maps will use the space BETWEEN grid points to determine what's drawn....

10-14-2008 06:24

Posted by:
Harbinger

Location:
Florida,USA

Click Here to Email Harbinger   Find more posts by Harbinger

Now have time again, as my job was farmed out. (Good thing, i was gonna need a vacation from it!)

Now, i've begun again in earnest. I'm building up steam as i work thru problems under the confines of a computer language. I have now successfully read and written a standard bitmap file, which i will use to store the basic matrix of the arrays. Taking a standard RGB, non-indexed .bmp file, the Red component will store the land altitude, the Green component will store the foliage level, and the Blue component will store the water level. I will develop a GUI to create this according to the format that the gamecode is expecting. A separate file will store the tile map (the area between the points) and the item lists (for structures, vehicles, cargo, etc.). I believe i can at the very least use AppleScript to assemble the program parts (the Code Modules, the .ini, .lst, and .txt files, and the graphics) into one TNT application, and at best --if i can figure out the file format -- i can assemble it from TNT (altho i hafta figure out how to turn an assembled data file into a working application file).

The hard part is the testing. Since i don't have all the components, and problems are usually solved on-the-fly, i have to set up testing "programlets" to see if i'm using the correct syntax and solution. This really slows me down. But at least i've got the train moving!

All times are GMT        Post A Reply

Forum Jump:
< Last Thread     Next Thread >

< Contact Us - TNT Basic >

Powered by: vBulletin Lite Version 1.0.1 Lite
Copyright © Jelsoft Enterprises Limited 2000.