On Tiles and Why We Don't Have Them (But we're progressing. Thanks utunnels)

Got it. Thank you for the info and best of luck to you.

Abandon the console based structure and it will be easier to implement any gui. :wink:

You can also wrap something like mvwprintw with a generic DrawText function and implement that in both sdl and curses. Also I believe a constantly updating game loop can be simulated using timeout and time functions.

Currently curses functions just scatter everywhere, making it hard to write a second render logic without hard work. The most practicable way I can think is modify only that map window, but still it is a hard way to go.

Or perhaps various menus/guis can be abstracted to curses independent structures, so we only need to implement a render function for either mode (graphics or pure text). The game logic modules only need to update menu/gui status.

Yeah, that’s a pretty major impediment, to be honest. To do this right, we should really be doing all our I/O through a middle layer that abstracts the ncurses vs. graphics differences (and, ideally, that allows us to stop copy-pasting window handling code all over the place). Unfortunately, that’s a non-trivial task, and we currently have more things on our to-do list than we have programmer time.

Yeah, that needs lots of labors and time.

A quicker approach, however, is making the game more modding friendly.

For example, add some function pointers, execute them when special events happen.

void (OnGameStart)(game game); //initialize modding data
void (OnMapDraw)(game game); //when the map is being rendered
void (OnKeyPress)(game game); //optional
void (OnGameExit)(game game); //unload resources, etc

Are we any closer to a tileset yet? Do we have an ETA?

Frankly, I think they should focus on getting the support done instead of throwing out possible dates or estimates to satisfy our cravings. All it does is put extra pressure on them to no tangible effect in the way of making progress. It’ll be done when it’s done, right? Less pressure means more lenience and focus on the important task for the team.

Well, we’ve taken the first small step (of many) towards tileset support. However, we still don’t really have an ETA. The closest we do have is still “whenever someone decides to set aside the time and do it. Also, not next release.”

Boy, I wish I hadn’t read the line that says ‘not next release’. That’s really bad news.

[quote=“utunnels, post:104, topic:197”]Yeah, that needs lots of labors and time.

A quicker approach, however, is making the game more modding friendly.

For example, add some function pointers, execute them when special events happen.

void (OnGameStart)(game game); //initialize modding data
void (OnMapDraw)(game game); //when the map is being rendered
void (OnKeyPress)(game game); //optional
void (OnGameExit)(game game); //unload resources, etc[/quote]

We have a facility for this in “gamemode”. You can toggle a particular mode and it inserts various hooks.

Currently it has the following:
init()
per_turn()
pre_action()
post_action()
game_over()

These can be expanded as needed.

Oh that is really cool. :slight_smile:

If anyone needs some spriting done, I am more than happy to help, I have been spriting on and off for a few years and I would say my skills are passable.

I used to post on picturewars quite a bit, and I am still rather active in helping with armies.
I don’t have much of a portfolio, as most of my efforts are now on a rather broken hardrive, however I will see what I can scrape up.
I do recall having a few more files somewhere, but anyway, this is what I have for the time being.

wow when Cataclysm get’s awesome looking sprites that will be the day… (Though I worry about it making slower systems lag)

The announcement needs the link to be fixed to this instead of this.

Is there some write up on where this is happening and how I can help? I can take care of some files or two if someone has specificed an API to use.

Also if there is a branch where people are cleaning up the game loop I would be willing to help there, just not quite in sync with the dev team, just found this game a couple days ago.

http://smf.cataclysmdda.com/index.php?topic=421.15 this looked awesome but then I shed a single tear that it was on older versions only (Non-existent)… hoping new tilesets will be awesome that it can make me play for 2 days straight without sleep :slight_smile:

I do love how the current graphics make the player use his or her imagination to create a better picture, so I wonder if a tile set would take away from that at all.

Oh well, back to making small 15x15 pictures in hopes that someone knows how to insert them into the game

by the way, check out the Tileset Project me and a few others are working on right now, it looks promising!
The thread is probably being posted on right now, just search for “Tileset Project”.

You made my day and also depressed me at the very same time, haha.

[quote=“utunnels, post:85, topic:197”]https://www.dropbox.com/s/r35pnekirwxy9m9/Cataclysm-DDA-sdltile.7z

I updated with my previous idea. Now every itype has an unique iid that can be used to map tile. Gfxwindow.cpp now uses a vector instead of map to store tileset infomation so it should be faster on rendering.

There isn’t much to do now I guess. Maybe a pixel artist will be wanted if this goes offical someday, because most of the pictures I’m using to test the code are taken from nethack and dwarf fortress.[/quote]

sorry! im a total noob! but id like to test this using he newest DDA build .6, how do I go about installing your tileset support into my base .6 game ??

im willing to create my own art work if you help me so i can get the word out!

i want to know does it support layered items like in THIS tileset?

http://smf.cataclysmdda.com/index.php?topic=753.0

any help is appreciated!!

Well that was a quick hack on top of the display function.
It seems to display normally, but lacks interaction to actual gameplay functions like firing weapons, explosion, looking around, etc

I abandoned the idea since it is one of the goal of the kickstarter project.

[quote=“utunnels, post:119, topic:197”]Well that was a quick hack on top of the display function.
It seems to display normally, but lacks interaction to actual gameplay functions like firing weapons, explosion, looking around, etc

I abandoned the idea since it is one of the goal of the kickstarter project.[/quote]

ah so it can only display base entities and nothing else then?

i see. any idea how I get it working in .6? cuz it still helps being able to see buildings and windows vs grass and terrain.