Commit graph

25 commits

Author SHA1 Message Date
seth
0c6d273828 * Fixed Revolution issue with unexpected Milders - I think! Hope I didn't break anything else
* Versioned to 1.92 due to the bugfix
* Warning, if compiled in debug mode I have crap in there that makes stuff run slow

git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1632 353e56fe-9613-0410-8469-b96ad8e6f29c
2018-06-15 06:57:29 +00:00
seth
838fa92175 * Options now correctly save when exitting the menu in html5
* Debug builds no longer quick save ever 5 seconds


git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1623 353e56fe-9613-0410-8469-b96ad8e6f29c
2018-06-09 04:26:02 +00:00
seth
2367dc5e3e * Versioned to 1.91
* (html5) -s PRECISE_F32=2 was added to the compile, fixes "drunk midi".  However, it hurts performance. This will be removed after FMOD fixes their stuff (see http://www.fmod.org/questions/question/midi-sounds-drunk-in-html5/ )
* (html5) Enabled Proton's persistent support for dink/dmod installs and saves

git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1621 353e56fe-9613-0410-8469-b96ad8e6f29c
2018-06-07 02:25:52 +00:00
seth
0aa86ebc75 * Misc tweaks that were done for 1.89
git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1528 353e56fe-9613-0410-8469-b96ad8e6f29c
2017-10-21 02:34:26 +00:00
seth
f1bf68da44 * Another bugfix in the .dmod decompresser, fixes issue with Attack of the veggies
* (Windows) Holding Shift in addition to Tab will cause "super turbo" mode, speeding up the game faster than just holding Tab.  (Secret tip:  If you really want to see speed, hold down the Control key too)

git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1525 353e56fe-9613-0410-8469-b96ad8e6f29c
2017-10-18 07:15:53 +00:00
seth
20f8a6a856 * Mobile GUI tweaks
* Added option to disable screen scroll transitions, one of my Android test devices has the slowest glread in the world, it's like 1 full second to walk to the next screen because of it.  This might make dmods that 
use timing (Myster island camera sequence for example) easier though, not sure.
* Fixed issue where behavior of two load_sequence commands in a row on the same sequence differed from 1.08 (in 1.08, max frame is set to the second one as long as the first one wasn't actually loaded yet.  key now shows up in TGKA)
* Fixed regression where offsets in Mayhem were incorrect on the hand mouse pointer
* Upped max frames per seq to 100 instead of 50, fixes Echoes of the Ancient.  I should probably make it dynamic but changing one const number is much easier!
* Now gives a clear warning in the log.txt if a seq tries to go beyond what it can handle and will truncate it (better than breaking the whole sequence as it did before)
* Added support for a weird bmp header type, fixes incorrect palette issue in the dmod The Orb of Darkness
* Fixed life/exp/health to correctly interpolate between values like the original dink, huge thanks to Dan's detailed bug report on this, he even made a mod which made testing the fix a breeze!

git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1520 353e56fe-9613-0410-8469-b96ad8e6f29c
2017-10-08 04:12:51 +00:00
seth
7e962c97e0 * Savestates should now properly restore the background in dmods that use mouse controls and tiles at the same time
* Some tweaks with when mouse buttons are processed (only in mouse cursor modes or a dialog menu)
* Misc work on touch controls to prepare for the mobile releases
* Added some names to credits (if you notice I added anybody twice or would rather be credited a different way or not at all, let me know!)
* Fixed bug that could sort of over-write random data if more than 100 sprites were active.. wow, bad

git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1518 353e56fe-9613-0410-8469-b96ad8e6f29c
2017-10-05 04:26:35 +00:00
seth
36a414e12a * (Windows) Running "dink.exe c:\temp\ACoolDMOD.dmod" from the command line will now install it, then run it. (original dmod file won't be deleted) Just seemed weird that this didn't exist so added it
* DMOD installer progress now switches to showing MB instead of K if the size is big
* BUGFIX: Fixed map loading bug that could crash the game (I added this one recently trying to clean up code to use more consts rather than magic #s, but there is always the risk I stupidely break something!)
* load_tile no longer instantly takes effect but requires a draw_screen or moving screens, this matches how 1.08 worked.  Loading a save state or resizing the window will cause it to happen early, but hey, close enough
* BUGFIX: Fixed extra nasty bug where logic on certain things like charging your magic would pause the amount of time you used TAB to skip time

git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1517 353e56fe-9613-0410-8469-b96ad8e6f29c
2017-10-02 13:48:06 +00:00
seth
63adc575a8 * Timing fixes, some Android work
git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1515 353e56fe-9613-0410-8469-b96ad8e6f29c
2017-09-29 22:57:00 +00:00
seth
4174db5427 * Some changes to Dink's speed calculations, it's now basically locked at "you better get 60 fps or the whole game will slow down" - the
original system is REALLY bad and the timing of Dink vs monsters can vary wildly based on your framerate.  So I sort of had to "choose" a correct
speed and go with that, I chose a pretty fast speed sort of arbitrarily because it "felt" ok.  There isn't really a "correct" speed so I do expect problems with some dmods due to them expecting
a specific speed, but by choosing rather snappy speed hopefully mystery island and most of them will be finishable
* Related to the above, holding tab no longer lets you cheat by moving relatively faster than monsters
* Playing location aware sounds on a script not attached to a sprite will no longer cause crashes (should fix crash in malachi the jerk)


git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1514 353e56fe-9613-0410-8469-b96ad8e6f29c
2017-09-29 13:13:36 +00:00
seth
ed55a08ab2 * Added "If a .dmod file is put in the Dink HD directory (where the .exe is), it will be automatically installed and then deleted" to readme.txt
* Dialog box rendering was off a few pixels due to me forgetting to remove some tests I did, fixed
* Black at index 255 and white at index 0 is now forced during bmp loading.  Windows does it, photoshop doesn't, but older versions of Dink (directx) seemed to do
it so going with that
* Invalid sprite sent to freeze/unfreeze will no longer crash the game (bug was also in original 1.08)
* Added hardening to check valid input on many script functions, will stop "sometimes" crashes based on bad scripting as well as log them
* Crash logging should show correct function names. I mean it this time!
- Some mobile related files added now that I'm starting to work on that side too

git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1512 353e56fe-9613-0410-8469-b96ad8e6f29c
2017-09-29 05:37:07 +00:00
seth
821e5f1651 * Changed release compiling a bit to enable C7 compatible debug info, may help with stack traces
* Oops, turned max sprites back up to 300 from 100, don't ask me how I managed that one
* (DinkC) A line of over 200 characters won't corrupt memory (new limit is 512) - this fixed a crash in Grasp of Darkness
* (DinkC) external commands no longer generate bogus errors in the log.txt due to how 1.08 added weird overloading stuff
* Now shows the dmod's splash.bmp during loading
* Fixed issue where music might not play on the title screen
* Raised "memory of dead background sprites" to 300 from 100 for Windows, up to 200 for mobile
* Doubled memory Dink is allowed to use before uncaching graphics not used recently (could probably be disabled entirely for Windows but whatever)

git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1510 353e56fe-9613-0410-8469-b96ad8e6f29c
2017-09-27 07:51:59 +00:00
seth
45e7f2bd60 * Applied 16 bit bmp loading fix to "fancy shadows" version too, forgot before
* (Bugfix) Dink is no longer sometimes incorrectly shown on screen right as a dmod is started
* (Windows, DinkC, Performance) Logging code rewritten, it's was horribly slow before.  If a DMOD spammed "debug" messages it would previously drastically slow down the entire dmod
* (Bugfix) LOAD_SEQUENCE and LOAD_SEQUENCE_NOW fixes, fixes stuff in many dmods
* Improved mouse handling on dialog menus, no longer accidently select the first option of the dink menu if you click slow after using HD's escape menu to get there

git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1507 353e56fe-9613-0410-8469-b96ad8e6f29c
2017-09-24 16:47:52 +00:00
seth
59d4b5754c * Dink now continues to download and install dmods when in the background, but everywhere else pauses automatically
* After installing a dmod, you can now choose to play it now or go back to the browse dmod list
* DMOD data downloaded from dink network is now cached for that session (it's not going to change so quickly, so why stress DN.com if we don't have to)
* (Bugfix) "installing <dmod>..." text message is no longer truncated in a weird way sometimes
* (Bugfix) Fixed another issue where a base graphic could fill in with a missing .bmp in a sequence when it shouldn't


git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1505 353e56fe-9613-0410-8469-b96ad8e6f29c
2017-09-23 11:52:16 +00:00
seth
3998875161 (note: Dink requires a Proton svn commit as well, but I haven't done it yet, it needs a bit more testing first)
* Fixed issue where launching dmods from DFArc with a dmod path not in DFArc's dir or Dink HD's dmod dir would fail
* Fixed compatibility so Freedink.exe and the dink.exe from 1.08 can be run from Dink HD's dir (previously, start.c had been hacked to skip stuff for the HD version,
  it now checks version and if it's being run as a dmod or not and does it right)
* If you run the HD "dink" dir as a mod it now works as expected (it plays the normal game, including the old start up screen)
* Now including story/*.c instead of the .d files.  No reason to hide them, right? (note: if you install over HD without uninstalling, the old .d files will still be there.  But .c files are checked
first so it should be ok anyway)
* DMODs now default to the original .midi files rather than the .ogg CD music, as it changed the desired "feel" of some DMODs to switch to CD music.  Running with -game dink causes Dink itself to
  not use CD music as well, so for people who don't like CD music at all there's an option to play the original game with midis only
* (Bugfix) Dink HD will no longer try to grab missing sprites from the base dink dir, this fixes Dink's pushing anim in Zoltron
* (Bugfix) dmod installer no longer chokes on zero byte files (I'm looking at you, 9gems)
* (Bugfix) Fixed memory leak and possible crash related to script loading
* (Bugfix) Fixed issue with the checkerboard shadow processing where the 8 bit RLE decoder failed because it was expecting an 8 bit target (most bmps don't use RLE, but Alliance does in places)
* Went ahead and decided to accept 252,252,252 as alpha if it's index 255 on an 8bit sprite.  This fixed the white background issue with Alliance dmod as well as Dinkcraft
* FEATURE: Can now download all DMODs from Dink Network directly from inside the game via Dan's php interface.  Can sort by rating, latest update date, or alphabetically

git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1502 353e56fe-9613-0410-8469-b96ad8e6f29c
2017-09-22 12:19:02 +00:00
seth
424424fae0 * The / divider on the experience display ( ns-11.bmp ) is now always "white transparent". This WAS the original way (check the Dink jewel case screenshots) but somehow in 1.08 and beyond this stopped being transparent. Fixing this fixed the white box in Bug Mania
* (Bugfix) Fixed "way too jumpy megapotion" bug


git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1501 353e56fe-9613-0410-8469-b96ad8e6f29c
2017-09-21 13:40:14 +00:00
seth
52c51c8a45 * Made Dink HD work with DFArc. Either you can put DFArc in the Dink HD dir and add "dmods" as the additional dmod directory so it can find
mods installed by Dink HD too, or you can keep Dink HD completely separate, and enter the full path/exe to Dink HD's .exe in DFArc config and that works too.

It's kind of weird that Dink HD puts its mods in a subdir called "dmods" as compared to the original Dink which useds its root dir. I could change that but.. meh.

* Added support for -window and -debug from the command line. Dink HD remembers the last setting already, so -window would only have any effect
if it was last used as fullscreen

* Added Dan Walma's improved shadow patch

git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1497 353e56fe-9613-0410-8469-b96ad8e6f29c
2017-09-20 12:34:53 +00:00
seth
a5da7058ed * (Bugfix) Fixed issue with not being able to set long delays in sprites (fixed dancing knight in Bugmania)
* (Bugfix) Fixed DinkC "!=" command which was renamed "!" for some reason. This fixed the goto in Bugmania
* Enabled support for >= and <= in DinkC, not sure why it was commented out before, they were active in 1.08
* (Bugfix) Status bar will now be drawn even when mouse mode is active if needed (it now shows up in Bugmania)
* Space no longer selects dialog, you'll have to use ENTER or CONTROL like on 1.08
* Mouse can now be used to select dialog options
* Fixed mouse issue with Bugmania in the town where it wasn't sending button down messages
(dmod list downloading is currently in a broken state)


git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1494 353e56fe-9613-0410-8469-b96ad8e6f29c
2017-09-19 10:58:00 +00:00
seth
79e8424266 * Properly handles an illegal frame # sent to sp_frame instead of crashing
- Versioned to 2.75


git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1492 353e56fe-9613-0410-8469-b96ad8e6f29c
2017-09-19 05:01:41 +00:00
seth
1adfda0aab * (Bugfix) Fixed issue where default .ini animations wouldn't get applied correctly in some cases, this fixed a slight offset problem with Stone Of Balance
* Fixed problem with glitchy black lines during screen transitions
* (Bugfix) Fixed issue with playmidi and filenames that start with numbers over 1000, this fixed a problem with 1812over.mid not playing in Mayhem
* Added 1920X1080 screen mode selector in the Options menu
* No longer applying Dan's checkboard fix to tile screens (they don't need it I think..), and also added a hack so it will ignore main-02 through main-04.bpm (the dialog box) as it made it look weird (it looks perfect in 640X480, but other resolutions have slight artifacts due to sub-pixel accuracy issues
* Fixed some issues related to dynamic 8 bit to 32 bit surface changes (this can happen if you turn on the new shadows after starting to play or the game suddenly hits a 32 bit image)
- Note: Just to be safe, save state version has changed, so old save states won't load

git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1490 353e56fe-9613-0410-8469-b96ad8e6f29c
2017-09-19 01:16:24 +00:00
seth
0bf781e005 * (Bugfix) Fixed a script crash. This bug was also in the legacy dink
* (Windows) "Tap to continue" is no longer shown when waiting for a keypress, but will still be shown on touch-devices
* Fixed bug where any DMOD directory starting with "dink" was ignored from the internal DMOD listing screen.  Oops, that was a pretty bad one, sorry dinkcrft.

git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1489 353e56fe-9613-0410-8469-b96ad8e6f29c
2017-09-18 01:41:26 +00:00
seth
9f9b1c3078 * (Bugfix) Rewrote some nasty code that I could no longer understand, THE LAST QUEST (part 2)'s cool room slide/warp effect now works right
* Added "Debug DinkC Toggle" to cheat menu, it shows collision boxes and causes the log (log.txt or choose view log from debug menu)
- Note:  Save state format has been changed again, so old save states won't load

git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1487 353e56fe-9613-0410-8469-b96ad8e6f29c
2017-09-17 09:50:30 +00:00
seth
d8bb8b8c77 * (DinkC) DinkC version is now reported as 110 instead of 109
* (Bugfix) Fixed issue with set_frame_frame, the DMOD Mayhem now works (is this DMOD for pyschopaths?!?! Not saying I didn't have fun though)
* (Bugfix) Fixed another incorrect color issue with fill_screen
* (Bugfix) Fixed horrible issue where the last line in a script might not get run.  This fixed the intro screen to Lost Forest Romp

git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1486 353e56fe-9613-0410-8469-b96ad8e6f29c
2017-09-17 04:54:34 +00:00
seth
04f68e8125 * (Windows) Added support for -game <dmod directory> parm to load a DMOD from anywhere on your HD. It also sets
the active DMOD dir to the DMODs parent directory for that session.  Automatic state autosave, save/continue and quicksave/quickload work as expected by saving data to its directory
* (bugfix) Save states now properly load even if the DMOD directory has been cut and pasted to a new place
* (bugfix) Full state saves now properly setup backgrounds with correct vision modifications instead of assuming it was 0
- Due to minor changes in the save state stuff, I've versioned it so the game will refuse to load old versions (as always, this doesn't affect the normal save files, just the full state saves HD does)
* (DinkC) fill_screen works better and colors 0 and 255 are no longer sometimes reversed
* (bugfix) M can now be used to turn off the map, previously it only worked to turn it on
* (bugfix) Status bar no longer incorrectly draws over full screen bitmaps (like the map in Mystery Island) and is properly reconstructed in full save states


git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1484 353e56fe-9613-0410-8469-b96ad8e6f29c
2017-09-16 15:16:26 +00:00
seth
b0c238e042 Few more things for Dink HD
git-svn-id: svn://rtsoft.com/rtsvn/projects/RTDink@1471 353e56fe-9613-0410-8469-b96ad8e6f29c
2017-09-12 05:01:10 +00:00