From d4eb10d10dc32b025755dcf5b7df49b3c9a81aea Mon Sep 17 00:00:00 2001 From: hendricks266 Date: Thu, 28 Nov 2019 23:22:01 +0000 Subject: [PATCH 1/6] SW: Fix saves Dynamically-allocated structs strike again. git-svn-id: https://svn.eduke32.com/eduke32@8325 1a8010ca-5511-0410-912e-c29ae57300e0 # Conflicts: # source/sw/src/saveable.h --- source/sw/src/game.cpp | 25 +++++++++++-------------- source/sw/src/saveable.cpp | 2 ++ source/sw/src/saveable.h | 14 +++++++++++--- 3 files changed, 24 insertions(+), 17 deletions(-) diff --git a/source/sw/src/game.cpp b/source/sw/src/game.cpp index 437d5eadf..59a44d5c3 100644 --- a/source/sw/src/game.cpp +++ b/source/sw/src/game.cpp @@ -4810,23 +4810,20 @@ void G_Polymer_UnInit(void) { } #include "saveable.h" -static saveable_data saveable_build_data[] = -{ - SAVE_DATA(sector), - SAVE_DATA(sprite), - SAVE_DATA(wall) -}; +saveable_module saveable_build{}; -saveable_module saveable_build = +void Saveable_Init_Dynamic() { - // code - NULL, - 0, + static saveable_data saveable_build_data[] = + { + {sector, MAXSECTORS*sizeof(sectortype)}, + {sprite, MAXSPRITES*sizeof(spritetype)}, + {wall, MAXWALLS*sizeof(walltype)}, + }; - // data - saveable_build_data, - NUM_SAVEABLE_ITEMS(saveable_build_data) -}; + saveable_build.data = saveable_build_data; + saveable_build.numdata = NUM_SAVEABLE_ITEMS(saveable_build_data); +} /*extern*/ bool GameInterface::validate_hud(int requested_size) { return requested_size; } /*extern*/ void GameInterface::set_hud_layout(int requested_size) { /* the relevant setting is gs.BorderNum */} diff --git a/source/sw/src/saveable.cpp b/source/sw/src/saveable.cpp index c568b1593..67e8339da 100644 --- a/source/sw/src/saveable.cpp +++ b/source/sw/src/saveable.cpp @@ -38,6 +38,8 @@ void Saveable_Init(void) { if (nummodules > 0) return; + Saveable_Init_Dynamic(); + #define MODULE(x) { \ extern saveable_module saveable_ ## x; \ saveablemodules[nummodules++] = &saveable_ ## x; \ diff --git a/source/sw/src/saveable.h b/source/sw/src/saveable.h index 657abadf4..0a288d058 100644 --- a/source/sw/src/saveable.h +++ b/source/sw/src/saveable.h @@ -24,6 +24,7 @@ #ifndef SAVEABLE_H #define SAVEABLE_H +#include "compat.h" typedef void *saveable_code; @@ -42,10 +43,16 @@ typedef struct unsigned int numdata; } saveable_module; -#define SAVE_CODE(s) (void*)s -#define SAVE_DATA(s) { (void*)&s, sizeof(s) } +template +static FORCE_INLINE constexpr enable_if_t::value, size_t> SAVE_SIZEOF(T const & obj) noexcept +{ + return sizeof(obj); +} -#define NUM_SAVEABLE_ITEMS(x) (sizeof(x)/sizeof(x[0])) +#define SAVE_CODE(s) (void*)(s) +#define SAVE_DATA(s) { (void*)&(s), SAVE_SIZEOF(s) } + +#define NUM_SAVEABLE_ITEMS(x) ARRAY_SIZE(x) typedef struct { @@ -61,6 +68,7 @@ typedef struct } saveddatasym; void Saveable_Init(void); +void Saveable_Init_Dynamic(void); int Saveable_FindCodeSym(void *ptr, savedcodesym *sym); int Saveable_FindDataSym(void *ptr, saveddatasym *sym); From 0dbf0a36a1e9e0fe6beb8c13e7cc9d7aac997cbb Mon Sep 17 00:00:00 2001 From: hendricks266 Date: Thu, 28 Nov 2019 23:22:05 +0000 Subject: [PATCH 2/6] SW: Rename the poorly named "Cool Stuff" menu entry to "Credits" and clean it up git-svn-id: https://svn.eduke32.com/eduke32@8326 1a8010ca-5511-0410-912e-c29ae57300e0 --- source/sw/src/menus.cpp | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/source/sw/src/menus.cpp b/source/sw/src/menus.cpp index 0144da70d..933dd75d5 100644 --- a/source/sw/src/menus.cpp +++ b/source/sw/src/menus.cpp @@ -521,7 +521,7 @@ MenuGroup LoadGameGroup = {100, 5, "^Load Game", load_i, pic_loadgame, 0, m_defs #define MAIN_XSTART 55 #define MAIN_LINE(line) (MAIN_YSTART + (MAIN_YOFF * line)) -#define MAIN_MENU_COOL_STUFF "^Cool Stuff" +#define MAIN_MENU_COOL_STUFF "^Credits" #define MAIN_MENU_HOW_TO_ORDER "^How to Order" MenuItem main_i[] = @@ -1258,29 +1258,24 @@ MNU_OrderCustom(UserCall call, MenuItem *item) static short RegOrderScreen[] = { - 5262, - 5261, - 4979, + // 5262, + // 5261, 5111, 5118, + 4979, 5113, - //5111, - //5118, - //4979, - //5261, - //5262 5120 // 5114 // JBF: for my credits }; static short SWOrderScreen[] = { - 5262, 5110, 5112, - 5113, + // 5262, 5111, 5118, 4979, + 5113, 5120 // 5114 // JBF: for my credits }; From f19c9eb8406016b4ffe7001f1c97da3df856dfa6 Mon Sep 17 00:00:00 2001 From: hendricks266 Date: Fri, 29 Nov 2019 07:53:31 +0000 Subject: [PATCH 3/6] SW: Clean up startup messages git-svn-id: https://svn.eduke32.com/eduke32@8328 1a8010ca-5511-0410-912e-c29ae57300e0 # Conflicts: # source/sw/src/game.cpp # source/sw/src/grpscan.cpp --- source/sw/src/game.cpp | 64 +++++++++--------------------------------- 1 file changed, 14 insertions(+), 50 deletions(-) diff --git a/source/sw/src/game.cpp b/source/sw/src/game.cpp index 59a44d5c3..db03fef4f 100644 --- a/source/sw/src/game.cpp +++ b/source/sw/src/game.cpp @@ -900,8 +900,8 @@ void InitGame() // LoadImages will now proceed to steal all the remaining heap space //_outtext("\n\n\n\n\n\n\n\n"); + //buildputs("Loading sound and graphics...\n"); //AnimateCacheCursor(); - initprintf("Loading sound and graphics...\n"); TileFiles.LoadArtSet("tiles%03d.art"); // Now free it up for later use @@ -2930,53 +2930,6 @@ void DosScreen(void) { } -#if 0 //PLOCK_VERSION -void AlphaMessage(void) -{ - Global_PLock = TRUE; // Set the hardwired parental lock mode! - initprintf("" - " SHADOW WARRIOR(tm) Version 1.2 \n" - "Copyright (c) 1997 3D Realms Entertainment\n" - "\n\n" - " NOTE: This version of Shadow Warrior has been modified from it's\n" - " original form. All of the violent and mature content has been\n" - " removed. To download a patch to restore this version to its\n" - " original form visit www.3drealms.com, www.gtinteractive.com, or look\n" - " inside your retail packaging for information about this version.\n\n\n" - ); -} -#endif - -#if 0 //UK_VERSION -void AlphaMessage(void) -{ - initprintf("" - " SHADOW WARRIOR(tm) Version 1.2 (UK Version) \n" - "Copyright (c) 1997 3D Realms Entertainment\n" - "\n\n" - " NOTE: This is a modified version of Shadow Warrior created for the UK.\n" - " It has been altered from its original version to replace \"shurikens\" \n" - " with darts. We apologize for the inconvenience and hope you enjoy the\n" - " game. Visit us on the web at www.3drealms.com.\n\n\n" - ); -} -#endif - -#if 1 //!UK_VERSION && !PLOCK_VERSION -void AlphaMessage(void) -{ - if (SW_SHAREWARE) - { - initprintf("SHADOW WARRIOR(tm) Version 1.2 (Shareware Version)\n"); - } - else - { - initprintf("SHADOW WARRIOR(tm) Version 1.2\n"); - } - initprintf("Copyright (c) 1997 3D Realms Entertainment\n\n"); -} -#endif - typedef struct { char notshareware; @@ -3099,6 +3052,14 @@ int32_t GameInterface::app_main() int cnt = 0; uint32_t TotalMemory; + if (argc > 1) + { + buildputs("Application parameters: "); + for (i = 1; i < argc; ++i) + buildprintf("%s ", argv[i]); + buildputs("\n"); + } + SW_ExtInit(); CONFIG_ReadSetup(); @@ -3126,9 +3087,12 @@ int32_t GameInterface::app_main() DebugOperate = TRUE; - AlphaMessage(); + if (SW_SHAREWARE) + buildputs("SHADOW WARRIOR(tm) Version 1.2 (Shareware Version)\n"); + else + buildputs("SHADOW WARRIOR(tm) Version 1.2\n"); - buildputs("\nType 'SW -?' for command line options.\n\n"); + buildputs("Copyright (c) 1997 3D Realms Entertainment\n"); UserMapName[0] = '\0'; From 1616ee0c6ac06c5a12d77212a92bbe9f745da37d Mon Sep 17 00:00:00 2001 From: hendricks266 Date: Fri, 29 Nov 2019 07:54:07 +0000 Subject: [PATCH 4/6] - added more SW GRP detection data (from latest VoidSW) - added SWCustom.txt from SWP, mainly as reference. What's really needed is one for Wanton Destruction, though. --- wadsrc/static/demolition/demolition.grpinfo | 105 +++- .../shadowwarrior.shadowwarrior/SWCustom.txt | 525 ++++++++++++++++++ 2 files changed, 623 insertions(+), 7 deletions(-) create mode 100644 wadsrc/static/filter/shadowwarrior.shadowwarrior/SWCustom.txt diff --git a/wadsrc/static/demolition/demolition.grpinfo b/wadsrc/static/demolition/demolition.grpinfo index b1561d67b..f4dcebc85 100644 --- a/wadsrc/static/demolition/demolition.grpinfo +++ b/wadsrc/static/demolition/demolition.grpinfo @@ -28,6 +28,10 @@ CRC RR_CRC 0x19D9BC79 RRRA_CRC 0x958018C6 BLOOD_CRC 0xA8FDDA84 + SWREG12_CRC 0x7545319F + SWWD_CRC 0xA9AAA7B7 + SWTD_CRC 0xA1A65BE8 + } @@ -87,7 +91,7 @@ grpinfo size 9690241 crc DUKE099_CRC flags GAMEFLAG_DUKE|GAMEFLAG_DUKEBETA - gamefilter "Duke.Duke" + gamefilter "Duke.Shareware" dependency 0 } @@ -97,7 +101,7 @@ grpinfo size 10429258 crc DUKE10_CRC flags GAMEFLAG_DUKE|GAMEFLAG_SHAREWARE - gamefilter "Duke.Duke" + gamefilter "Duke.Shareware" dependency 0 } @@ -107,7 +111,7 @@ grpinfo size 10442980 crc DUKE11_CRC flags GAMEFLAG_DUKE|GAMEFLAG_SHAREWARE - gamefilter "Duke.Duke" + gamefilter "Duke.Shareware" dependency 0 } @@ -117,7 +121,7 @@ grpinfo size 11035779 crc DUKESW_CRC flags GAMEFLAG_DUKE|GAMEFLAG_SHAREWARE - gamefilter "Duke.Duke" + gamefilter "Duke.Shareware" dependency 0 } @@ -127,7 +131,7 @@ grpinfo size 10444391 crc DUKEMD_CRC flags GAMEFLAG_DUKE|GAMEFLAG_SHAREWARE - gamefilter "Duke.Duke" + gamefilter "Duke.Shareware" dependency 0 } @@ -137,7 +141,7 @@ grpinfo size 10628573 crc DUKEMD2_CRC flags GAMEFLAG_DUKE|GAMEFLAG_SHAREWARE - gamefilter "Duke.Duke" + gamefilter "Duke.Shareware" dependency 0 } @@ -351,6 +355,19 @@ grpinfo gamefilter "Blood.Blood" } +grpinfo +{ + // This is for identifying older Blood versions. Since I have no information, all I can do is testing for a few known files. + name "BLOOD: Unknown Version" + mustcontain "help1.qav", "cult2d2.seq", "tombstn1.kvx", "normal.plu" + defname "blood.def" + scriptname "BLOOD.INI" + flags GAMEFLAG_BLOOD + dependency 0 + loadgrp "SOUNDS.RFF", "GUI.RFF" + gamefilter "Blood.Blood" +} + grpinfo { name "BLOOD: Cryptic Passage" @@ -367,8 +384,82 @@ grpinfo { name "Shadow Warrior" flags GAMEFLAG_SW - crc 0x7545319F + crc SWREG12_CRC size 47536148 defname "sw.def" gamefilter "ShadowWarrior.ShadowWarrior" } + +grpinfo +{ + name "Shadow Warrior Shareware 1.0" + flags GAMEFLAG_SW|GAMEFLAG_SHAREWARE + crc 0xDAA6BECE + size 25702245 + defname "sw.def" + gamefilter "ShadowWarrior.Shareware" +} + +grpinfo +{ + name "Shadow Warrior Shareware 1.1" + flags GAMEFLAG_SW|GAMEFLAG_SHAREWARE + crc 0xF21A6B35 + size 25833456 + defname "sw.def" + gamefilter "ShadowWarrior.Shareware" +} + +grpinfo +{ + name "Shadow Warrior Shareware 1.2" + flags GAMEFLAG_SW|GAMEFLAG_SHAREWARE + crc 0x08A7FA1F´ + size 26056769 + defname "sw.def" + gamefilter "ShadowWarrior.Shareware" +} + +grpinfo +{ + name "Shadow Warrior Mac Demo" + flags GAMEFLAG_SW|GAMEFLAG_SHAREWARE + crc 0x4227F535u + size 26056769 + defname "sw.def" + gamefilter "ShadowWarrior.Shareware" +} + +grpinfo +{ + name "Shadow Warrior: Wanton Destruction" + flags GAMEFLAG_SW|GAMEFLAG_ADDON + crc SWWD_CRC + size 48698128 + defname "sw.def" + dependency SWREG12_CRC + gamefilter "ShadowWarrior.Wanton" +} + +grpinfo +{ + name "Shadow Warrior: Twin Dragon" + flags GAMEFLAG_SW|GAMEFLAG_ADDON + crc SWTD_CRC + size 12499012 + defname "twindrag.def" // included in the GRP + dependency SWREG12_CRC + gamefilter "ShadowWarrior.TwinDragon" +} + + + +internalgrpfile grpfiles[numgrpfiles] = +{ + { "Shadow Warrior", SWREG12_CRC, 47536148, 0, 0 }, + { "Shadow Warrior Shareware 1.0", 0xDAA6BECEu, 25702245, 0, 0 }, + { "Shadow Warrior Shareware 1.1", 0xF21A6B35u, 25833456, 0, 0 }, + { "Shadow Warrior Shareware 1.2", 0x08A7FA1Fu, 26056769, 0, 0 }, + { "Shadow Warrior Mac Demo", 0x4227F535u, 26056769, 0, 0 }, + { "Wanton Destruction", SWWD_CRC, 48698128, GRP_HAS_DEPENDENCY, SWREG12_CRC }, + { "Twin Dragon", SWTD_CRC, 12499012, GRP_HAS_DEPENDENCY, SWREG12_CRC }, diff --git a/wadsrc/static/filter/shadowwarrior.shadowwarrior/SWCustom.txt b/wadsrc/static/filter/shadowwarrior.shadowwarrior/SWCustom.txt new file mode 100644 index 000000000..4372f00cc --- /dev/null +++ b/wadsrc/static/filter/shadowwarrior.shadowwarrior/SWCustom.txt @@ -0,0 +1,525 @@ +level 1 +{ + title "Seppuku Station" + filename "$bullet.map" + song "e1l01.mid" + cdatrack 4 + besttime 60 + partime 300 +} +level 2 +{ + title "Zilla Construction" + filename "$dozer.map" + song "e1l03.mid" + cdatrack 9 + besttime 300 + partime 480 +} +level 3 +{ + title "Master Leep's Temple" + filename "$shrine.map" + song "e1l02.mid" + cdatrack 12 + besttime 196 + partime 600 +} +level 4 +{ + title "Dark Woods of the Serpent" + filename "$woods.map" + song "e1l04.mid" + cdatrack 10 + besttime 428 + partime 960 +} +level 5 +{ + title "Rising Son" + filename "$whirl.map" + song "yokoha03.mid" + cdatrack 5 + besttime 330 + partime 600 +} +level 6 +{ + title "Killing Fields" + filename "$tank.map" + song "nippon34.mid" + cdatrack 6 + besttime 120 + partime 240 +} +level 7 +{ + title "Hara-Kiri Harbor" + filename "$boat.map" + song "execut11.mid" + cdatrack 8 + besttime 120 + partime 240 +} +level 8 +{ + title "Zilla's Villa" + filename "$garden.map" + song "execut11.mid" + cdatrack 11 + besttime 66 + partime 120 +} +level 9 +{ + title "Monastery" + filename "$outpost.map" + song "sanai.mid" + cdatrack 12 + besttime 90 + partime 180 +} +level 10 +{ + title "Raider of the Lost Wang" + filename "$hidtemp.map" + song "kotec2.mid" + cdatrack 5 + besttime 125 + partime 250 +} +level 11 +{ + title "Sumo Sky Palace" + filename "$plax1.map" + song "kotec2.mid" + cdatrack 10 + besttime 392 + partime 720 +} +level 12 +{ + title "Bath House" + filename "$bath.map" + song "yokoha03" + cdatrack 4 + besttime 600 + partime 600 +} +level 13 +{ + title "Unfriendly Skies" + filename "$airport.map" + song "nippon34" + cdatrack 6 + besttime 180 + partime 300 +} +level 14 +{ + title "Crude Oil" + filename "$refiner.map" + song "kotoki12.mid" + cdatrack 9 + besttime 160 + partime 300 +} +level 15 +{ + title "Coolie Mines" + filename "$newmine.map" + song "hoshia02.mid" + cdatrack 7 + besttime 180 + partime 300 +} +level 16 +{ + title "Subpen 7" + filename "$subbase.map" + song "hoshia02.mid" + cdatrack 10 + besttime 122 + partime 240 +} +level 17 +{ + title "The Great Escape" + filename "$rock.map" + song "" + cdatrack 8 + besttime 198 + partime 360 +} +level 18 +{ + title "Floating Fortress" + filename "$yamato.map" + song "sanai.mid" + cdatrack 7 + besttime 698 + partime 1200 +} +level 19 +{ + title "Water Torture" + filename "$seabase.map" + song "kotec2.mid" + cdatrack 9 + besttime 307 + partime 480 +} +level 20 +{ + title "Stone Rain" + filename "$volcano.map" + song "" + cdatrack 10 + besttime 554 + partime 660 +} +level 21 +{ + title "Shanghai Shipwreck" + filename "$shore.map" + song "" + cdatrack 11 + besttime 240 + partime 480 +} +level 22 +{ + title "Auto Maul" + filename "$auto.map" + song "" + cdatrack 5 + besttime 247 + partime 480 +} +level 23 +{ + title "Heavy Metal (DM only)" + filename "tank.map" + song "" + cdatrack 11 + besttime 600 + partime 600 +} +level 24 +{ + title "Ripper Valley (DM only)" + filename "$dmwoods.map" + song "" + cdatrack 8 + besttime 600 + partime 600 +} +level 25 +{ + title "House of Wang (DM only)" + filename "$dmshrin.map" + song "" + cdatrack 7 + besttime 600 + partime 600 +} +level 26 +{ + title "Lo Wang Rally (DM only" + filename "$rush.map" + song "" + cdatrack 13 + besttime 600 + partime 600 +} +level 27 +{ + title "Ruins of the Ronin (CTF)" + filename "shotgun.map" + song "" + cdatrack 5 + besttime 600 + partime 600 +} +level 28 +{ + title "Killing Fields (CTF)" + filename "$dmdrop.map" + song "" + cdatrack 6 + besttime 600 + partime 600 +} +episode 1 +{ + title "Enter the Wang" + subtitle "Four levels (Shareware Version)" +} +episode 2 +{ + title "Code of Honor" + subtitle "Eighteen levels (Full Version Only)" +} +skill 1 +{ + name "Tiny Grasshopper" +} +skill 2 +{ + name "I Have No Fear" +} +skill 3 +{ + name "Who Wants Wang" +} +skill 4 +{ + name "No Pain, No Gain" +} +/* +inventory 1 +{ + name "Armor Vest +50" + amount 50 +} +inventory 2 +{ + name "Kevlar Armor Vest +100" + amount 100 +} +inventory 3 +{ + name "MedKit +20" + amount 20 +} +inventory 4 +{ + name "Fortune Cookie +50 BOOST" + amount 50 +} +inventory 5 +{ + name "Portable MedKit" + amount 100 +} +inventory 6 +{ + name "Gas Bomb" + amount 1 +} +inventory 7 +{ + name "Flash Bomb" + amount 2 +} +inventory 8 +{ + name "Caltrops" + amount 3 +} +inventory 9 +{ + name "Night Vision Goggles" + amount 100 +} +inventory 10 +{ + name "Repair Kit" + amount 100 +} +inventory 11 +{ + name "Smoke Bomb" + amount 100 +} +weapon 1 +{ + name "Fists" + mindamage 10 + maxdamage 40 +} +weapon 2 +{ + name "Sword" + mindamage 50 + maxdamage 80 +} +weapon 3 +{ + name "Shurikens" + ammoname "" + maxammo 99 + mindamage 5 + maxdamage 10 + pickup 9 + weaponpickup 9 +} +weapon 4 +{ + name "Sticky Bombs" + ammoname "" + maxammo 20 + mindamage 5 + maxdamage 10 + pickup 5 + weaponpickup 5 +} +weapon 5 +{ + name "UZI Submachine Gun" + ammoname "UZI Clip" + maxammo 200 + mindamage 5 + maxdamage 7 + pickup 50 + weaponpickup 50 +} +weapon 6 +{ + name "Missile Launcher" + ammoname "Missiles" + maxammo 50 + mindamage 15 + maxdamage 30 + pickup 5 + weaponpickup 5 +} +weapon 7 +{ + name "Nuclear Warhead" + ammoname "" + maxammo 0 + mindamage 0 + maxdamage 800 + pickup 1 + weaponpickup 1 +} +weapon 8 +{ + name "Grenade Launcher" + ammoname "Grenade Shells" + maxammo 50 + mindamage 15 + maxdamage 30 + pickup 6 + weaponpickup 8 +} +weapon 9 +{ + name "Rail Gun" + ammoname "Rail Gun Rods" + maxammo 20 + mindamage 40 + maxdamage 60 + pickup 10 + weaponpickup 10 +} +weapon 10 +{ + name "Riot Gun" + ammoname "Shotshells" + maxammo 52 + mindamage 4 + maxdamage 4 + pickup 8 + weaponpickup 24 +} +weapon 11 +{ + name "Guardian Head" + ammoname "Firebursts" + maxammo 80 + mindamage 10 + maxdamage 25 + pickup 30 + weaponpickup 30 +} +weapon 12 +{ + name "Ripper Heart" + ammoname "Deathcoils" + maxammo 5 + mindamage 75 + maxdamage 100 + pickup 1 + weaponpickup 1 +} +fortune +{ + "You never going to score." + "26-31-43-82-16-29" + "Sorry, you no win this time, try again." + "You try harder get along. Be a nice man." + "No man is island, except Lo Wang." + "There is much death in future." + "You should kill all business associates." + "(c)1997,3DRealms fortune cookie company." + "Your chi attracts many chicks." + "Don't you know you the scum of society!?" + "You should not scratch yourself there." + "Man who stand on toilet, high on pot." + "Man who fart in church sit in own pew." + "Man trapped in pantry has ass in jam." + "Baseball wrong. Man with 4 balls cannot walk." + "Man who buy drowned cat pay for wet pussy." +} +gotkey +{ + "Got the RED key!" + "Got the BLUE key!" + "Got the GREEN key!" + "Got the YELLOW key!" + "Got the GOLD master key!" + "Got the SILVER master key!" + "Got the BRONZE master key!" + "Got the RED master key!" +} +needkey +{ + "You need a RED key for this door." + "You need a BLUE key for this door." + "You need a GREEN key for this door." + "You need a YELLOW key for this door." + "You need a GOLD key for this door." + "You need a SILVER key for this door." + "You need a BRONZE key for this door." + "You need a RED key for this door." +} +animation +{ + "SwpAnim.zip" // Swp1001.. 43 frames org = sw.anm + "swend.anm" // Swp2001.. 70 + "sumocinm.anm" // Swp3001.. 84 + "zfcin.anm" // Swp4001.. 142 +} +theme 1 // game startup menu +{ + song "theme.mid" + cdatrack 2 +} +theme 2 // bonus screen +{ + song "endlev3.voc" + cdatrack 3 +} +theme 3 // serpent boss meter +{ + song "serpent.mid" + cdatrack 13 +} +theme 4 // sumo boss meter +{ + song "sumo.mid" + cdatrack 13 +} +theme 5 // zilla boss meter +{ + song "zilla.mid" + cdatrack 13 +} +theme 6 // game end sequence +{ + song "ending.mid" + cdatrack 14 +} +*/ \ No newline at end of file From 07ac12110f63a8827c25adb28e55548a34506f8a Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Fri, 29 Nov 2019 20:14:45 +0100 Subject: [PATCH 5/6] - removed some piece of obsolete code merged from upstream. --- source/sw/src/game.cpp | 8 -------- 1 file changed, 8 deletions(-) diff --git a/source/sw/src/game.cpp b/source/sw/src/game.cpp index db03fef4f..500d0a689 100644 --- a/source/sw/src/game.cpp +++ b/source/sw/src/game.cpp @@ -3052,14 +3052,6 @@ int32_t GameInterface::app_main() int cnt = 0; uint32_t TotalMemory; - if (argc > 1) - { - buildputs("Application parameters: "); - for (i = 1; i < argc; ++i) - buildprintf("%s ", argv[i]); - buildputs("\n"); - } - SW_ExtInit(); CONFIG_ReadSetup(); From 8df8fc436a912f03cc6fc082c786b1552caffb6a Mon Sep 17 00:00:00 2001 From: Christoph Oelckers Date: Fri, 29 Nov 2019 20:44:36 +0100 Subject: [PATCH 6/6] - fixed GRPINFO. --- wadsrc/static/demolition/demolition.grpinfo | 21 +++++---------------- 1 file changed, 5 insertions(+), 16 deletions(-) diff --git a/wadsrc/static/demolition/demolition.grpinfo b/wadsrc/static/demolition/demolition.grpinfo index f4dcebc85..9674d5d16 100644 --- a/wadsrc/static/demolition/demolition.grpinfo +++ b/wadsrc/static/demolition/demolition.grpinfo @@ -332,8 +332,8 @@ grpinfo grpinfo { + // This is for detecting zipped versions of the mod. The default configuration with all files dumped in the game filter requires starting the game with "-route66" name "Redneck Rampage: Suckin' Grits on Route 66" - loaddirectory scriptname "GAME66.CON" mustcontain "TILESA66.ART", "TILESB66.ART", "CARNIVAL.MAP", "TRUCKSTP.MAP", "GAME66.CON" flags GAMEFLAG_RR|GAMEFLAG_ADDON @@ -370,13 +370,13 @@ grpinfo grpinfo { + // This is for detecting zipped versions of the mod. The default configuration with all files dumped in the game filter requires starting the game with "-cryptic" name "BLOOD: Cryptic Passage" - loaddirectory scriptname "CRYPTIC.INI" mustcontain "CRYPTIC.INI", "CP01.MAP", "CP02.MAP" flags GAMEFLAG_BLOOD|GAMEFLAG_ADDON dependency BLOOD_CRC - loadart "CPART07.AR_", "CPART15.AR_" // some versions have these file names, some have the real ones instead so these must be listed but cannot be used for checking. + loadart "CPART07.AR_", "CPART15.AR_" gamefilter "Blood.Cryptic" } @@ -414,7 +414,7 @@ grpinfo { name "Shadow Warrior Shareware 1.2" flags GAMEFLAG_SW|GAMEFLAG_SHAREWARE - crc 0x08A7FA1F´ + crc 0x08A7FA1F size 26056769 defname "sw.def" gamefilter "ShadowWarrior.Shareware" @@ -424,7 +424,7 @@ grpinfo { name "Shadow Warrior Mac Demo" flags GAMEFLAG_SW|GAMEFLAG_SHAREWARE - crc 0x4227F535u + crc 0x4227F535 size 26056769 defname "sw.def" gamefilter "ShadowWarrior.Shareware" @@ -452,14 +452,3 @@ grpinfo gamefilter "ShadowWarrior.TwinDragon" } - - -internalgrpfile grpfiles[numgrpfiles] = -{ - { "Shadow Warrior", SWREG12_CRC, 47536148, 0, 0 }, - { "Shadow Warrior Shareware 1.0", 0xDAA6BECEu, 25702245, 0, 0 }, - { "Shadow Warrior Shareware 1.1", 0xF21A6B35u, 25833456, 0, 0 }, - { "Shadow Warrior Shareware 1.2", 0x08A7FA1Fu, 26056769, 0, 0 }, - { "Shadow Warrior Mac Demo", 0x4227F535u, 26056769, 0, 0 }, - { "Wanton Destruction", SWWD_CRC, 48698128, GRP_HAS_DEPENDENCY, SWREG12_CRC }, - { "Twin Dragon", SWTD_CRC, 12499012, GRP_HAS_DEPENDENCY, SWREG12_CRC },