The Dink Network

Don't step on the same raker, or impressions while making a DMod

December 15th 2004, 03:27 PM
sob_scorpy.gif
Tyrsis
Peasant She/Her Russia
 
This text was first published on my site. But my site being not so frequented as this great place I decided to put this text here.

When I started the AGAE (due to Dimon's idea of testing my own skills) I read Seth's development texts, looked into source files - everything seemed easy enough. But then I stumbled upon some game engine and dinkedit tricks…

So I made some notes for myself, and hope it may be helpful to other people starting on this thorny path.

This text doesn't pretend to be a kind of a tutorial. It is exactly what is in the title: impressions of a person who tries to make a DMod.

Later on I added some modifications to it and now it is a kind of a DMod writer's online log, about the undocumented or just strange behaviour of Dink engine - or about my own errors not so easy to solve (at least for me at the time).

If you think it immodest - well, don't read it further.

If you know the source of a problem or think I'm wrong - I am ready for discussion.

I hope it may be helpful to the beginners, and maybe someone would mail a hint to me. Don't flame me if you don't like this text.

1. Don't be keen on screenlocks. The game engine bug #1: if you try to escape the locked screen and move along the screen edge - you just walk through any hardness and then, when the monster dies and the screen unlocks, you are somewhere you shouldn't be, and can't get back. So the screenlocks are for the screens with completely open edges, otherwise you shouldn't let Dink (and monsters!) touch screen edge.
When you make a map, close all edges! The same hardness problem exists on the edge of your world, and always, not only with a screenlock.

2. Don't ever use compile.exe from original dink - it's extremely buggy. Use windinkedit tools instead (I don't say it's bugless, but there are much less bugs).

3. A couple of times I had the nasty glitch: you crash on one particular screen, almost every time. Later I learned that there were too many sprites were on the screen. So if the limit was exceeded (by screen match feature usually) the game crashed.

4. The graphics: don't forget applying dink palette when using ffcreate, lest your sprites will look very strange.

5. When using show_bmp procedure dink palette is necessary. And the problem with DirectX may arise if your bmp size is not exactly 640x480. The game just crashes with some videocards (not the one I have).

6. The compare_magic procedure just doesn't work like compare_weapon. Lost 30 min to discover that. Had to do it other way.

7. If your script generates a sprite, but you don't see it (it is there, it works but doesn't show) - it means the sequence is pushed out of memory cache. The debugger gives "bad pix in sequence" message. Just use preload sequence.

8. If you make burnable tree unburnable, bear in mind that fireball takes off its hardness, so the script must restore it (in the hit procedure). I just draw one more pine-tree, darker one. So it doesn't burn because only 1st frame tree in the sequence can burn. Thank God there is the Sprite Replacer!

9. Don't add monsters with the screen match mode on - they will keep appearing from the adjacent screens' edges.

10. If a sprite must be on more than one screen - let it be 2, not more screens, or it may be partly lost in DinkEdit. Or use WinDinkEdit to check and/or correct it.

11. The good idea is checking all your map midscreen hardness and tile connections with WinDinkEdit.

12. (NEW) There is a known bug in dink: if Dink kills an enemy and it is followed by a cutscene (e.g. in SOB, story 4, when he kils a witch in the jail) and there happens level up, you never see the cutscene and Dink remains frozen.
Solution: Don't give experience points for such enemies using sp_exp(), use &exp += 200 in the cutscene script.

I hope you are not bored by this long text
December 15th 2004, 04:06 PM
burntree.gif
Striker
Noble She/Her United States
Daniel, there are clowns. 
Cool. Quite informative, Tyrsis.
December 22nd 2004, 02:18 PM
sob_scorpy.gif
Tyrsis
Peasant She/Her Russia
 
The article is "to be continued"
I hope it may help a person making his/her first DMod as it would certainly helped myself