Age | Commit message (Collapse) | Author |
|
I discovered, that difference in key mappings between FoxTail and usual
games is not due to FoxTail's engine differences from WME Lite, but were
made in WME Lite itself! WME 1.x is using "Virtual-Key Codes" mapping
and WME Lite and FoxTail are using "SDL_Keycode" mapping.
So, here is total refactoring of keycode handling.
Why nobody noticed this earlier? Because there are only 4 currently
known series that are based on WME Lite (J.U.L.I.A. series, Reversion
series, FoxTail and Securanote) and because most WME games, both
1.x-based and Lite-based are using Keyboard class only for handling
Enter and Escape keys, which are the same in both mappings (Backspace,
Space and Tab are also the same).
|
|
|
|
|
|
FoxTail reloads in-hand items and cursor during AfterLoad by calling
wrapped Game.LoadItems() method.
This does not work in WME, as WME explicitly disables methods call at
"AfterLoad" event.
Somehow, everything seems to work fine without it. Let's supress this
error by now...
TODO: inspect actor.TakeItem and SetItemCursor for possible effects
TODO: make a fake game that calls some methods on AfterLoad, test with FoxTail engine
|
|
Wintermute games usually display save/load progress bar as a rectangle drawn above an image.
FoxTail's progress bar is drawn below semitransparent image instead.
TODO: I have no idea how to make this work with "dirty_rect=true" mode.
|
|
Some FoxTail versions have bitmap fonts with white letters and COLOR properties.
Alpha value of subframe can be used to recolor white letters to desired color.
|
|
FoxTail fork of WME seems to have hard-coded modifications for getting inter-line and inter-character spaces smaller.
|
|
FoxTail code is hacked to use key codes from different from usual WME.
Got correct mapping using script decompiling, verified with sample game.
|
|
FoxTail requires Game.RegistryFlush() method to force saving of persistent settings
|
|
FoxTail use 2x, 3x, 4x, etc so-called "screen modes", that are switched between in Options menu.
Current implementation makes FoxTail no choice but to think that 640x360 is the only option avaliable, since we don't want game engine to mess with ScummVM's render filter settings.
|
|
FoxTail requires Game.GetSaveSlotDescriptionTimestamp for getting
information about saved games.
Engine 1.2.362 and below returns object with Description and Timestamp
fields.
Engine 1.2.527 and above returns array[2] with Description and Timestamp
as items.
|
|
|
|
Game.Split(str,sep) is added to split string into array of substrings with separator
array.Delete(index) is added to delete an array item by index
|
|
FoxTail requires access to SubFrame's pixels to set actor.AlphaColor
with lighting map pixel value at x,y of actor's position.
|
|
FoxTail requires Game to have 2 string options with engine build and
game package version.
BuildVersion is provided with detection tables
GameVersion is extracted from data.dcp and stored in a hashmap
|
|
FoxTail gets a Steam API language code on 1st start from Game.SystemLanguage property
FoxTail currently uses 5 languages: English, German, Polish, Russian, Ukrainian
Even more languages are promised on release, so let's support all possible languages here
There are 22 languages listed both in common/language.h and Steam API, supported them all
See https://partner.steamgames.com/doc/store/localization for current API language codes
|
|
FoxTail engine is a WME Light engine fork with closed sources.
Some features have different behaviour in different versions of FoxTail engine.
That's why we need to detect engine version.
Note that FOXTAIL_OLDEST_VERSION > LATEST_VERSION.
Most features are just new methods for Game, Actor, Array, etc. and are not guarded.
Some hacks are common for all FoxTail versions, and are guarded with isFoxTail().
Some changes are specific to versions from v1 to v2, isFoxTail(v1,v2) is checked then.
|
|
|
|
1. Moved KEYCODE_SPACE to "alphanumeric or punctuation" group.
2. Splited "else" into before and after WME_LITE.
|
|
Latest Steam updates for Reversion titles include Simplified and Traditional Chinese languages that were not properly identified
|
|
Unused variables were cleaned up at
47811167d5ddd9cbf64099ad36f2da5ae413fc86, commenting out a bit too much
code, since stack->pop() has a side effect (popping a value from data
stack).
|
|
These are flagged by GCC if -Wswitch-default is enabled.
|
|
|
|
Have commented out rather than removed the lines causing unused variable
warnings as they might be used again in future.
|
|
Ooops. Latest refactoring of those if/else blocks was wrong, as a result
Reversion 1&2 ignored all the xlanguage packages. Fixed.
|
|
* WINTERMUTE: Add detection and package filtering for Alpha Polaris
Source: https://steamdb.info/app/405780/depots/
NOTE: This is a 2.5D game that is out of ScummVM scope
* WINTERMUTE: Set exact engine version for Project Joe
Download:
http://public.ag.ru/vd/3f983a3b5daf485f6559e7ca1380e47b/demos/14118/joesetup.exe
This also fixes slider issue at Settings menu, since LATEST_VERSION has
sliders broken
* WINTERMUTE: Add detection for Everyday Grey
Fixes https://bugs.scummvm.org/ticket/6563
NOTE: This game seems to be mistakenly marked as 2.5D at Wintermute wiki
Download:
https://web.archive.org/web/20140824221311if_/http://www.krumbukt.com/UnityGames/Everyday_Grey_setup.rar
* WINTERMUTE: Add detection for Apeiron game
Download: https://www.moddb.com/games/apeiron
* WINTERMUTE: Add detection for Palladion demo
Download:
http://www.adventuresplanet.it/contenuti/demo/palladion_demo.exe
* WINTERMUTE: Add detection for Art of Murder: FBI Confidential
Adds checksums from https://bugs.scummvm.org/ticket/6532
NOTE: This is a 2.5D game that is out of ScummVM scope
Buy: https://store.steampowered.com/app/809000
* WINTERMUTE: Add detection for Mental Repairs Inc
This fixes https://bugs.scummvm.org/ticket/6528
Download:
https://games.softpedia.com/get/Freeware-Games/Mental-Repairs-Inc.shtml
NOTE: This is a 2.5D game that is out of ScummVM scope
* WINTERMUTE: Add detection for On the Tracks of Dinosaurs
NOTE: This is a 2.5D game that is out of ScummVM scope
Download: http://reptilesquest.000webhostapp.com/?page=5
* WINTERMUTE: Set engine version for J.U.L.I.A.
Fun fact: J.U.L.I.A. is using 3D features, however this game was
reported as completable with VFX low
Download demo:
http://www.adventuresplanet.it/contenuti/demo/julia_demo_setup.exe
* WINTERMUTE: Add detection for some versions of J.U.L.I.A.: Among the Stars
NOTE: This is a 2.5D game that is out of ScummVM scope
* WINTERMUTE: Add detection for J.U.L.I.A.: Untold
"J.U.L.I.A.: Untold" is a DLC game for "J.U.L.I.A.: Among the Stars"
Buy:
https://store.steampowered.com/app/360340/JULIAAmong_the_Stars__Soundtrack_Hintbook_Untold/
|
|
|
|
Removed unnecessary '\0' byte written after a string. Reasons to remove:
1. Hamlet game does not write 0 after string when running this code:
var SomeFile = new File((Game.SaveDirectory + "\gamelet.save"));
SomeFile.OpenAsText(2);
SomeFile.WriteText(LVL_N);
SomeFile.Close();
2. Original WME does not have this:
https://github.com/retrowork/Wintermute-Engine/blob/master/src/engine_core/wme_base/SXFile.cpp#L303
|
|
|
|
|
|
Assertion was caused by providing "saves/" prefixed string to
WindowsFilesystemNode::getChild() function, that asserts on '/'
characters.
Wintermute game code:
if(!(Game.FileExists((Game.SaveDirectory + "\gamelet.save")))) {
Directory.Create(Game.SaveDirectory);
}
...
Assertion stack:
from C:\WINDOWS\System32\KernelBase.dll
from C:\WINDOWS\System32\msvcrt.dll
(this=0xcfdf710,
n=...) at backends/fs/windows/windows-fs.cpp:158
n=...)
at common/fs.cpp:68
(filename=...)
at engines/wintermute/base/file/base_disk_file.cpp:76
at engines/wintermute/base/file/base_disk_file.cpp:105
this=0x50795e0, filename=...)
at engines/wintermute/base/base_file_manager.cpp:326
(this=0xcea72f0,
script=0xcf657d0, stack=0xcf6a2e0, thisStack=0xcf69ee0,
name=0xcfd8870 "FileExists") at
engines/wintermute/base/base_game.cpp:1523
...
|
|
Source:
http://docs.dead-code.org/wme/generated/scripting_ref_directory.html
|
|
* WINTERMUTE: Add all changelog engine versions to enum
Source: http://docs.dead-code.org/wme/history.html
* WINTERMUTE: Fixed name and update detection for Satan and sons
Download:
http://www.freegamearchive.com/play/download/game/satan_and_sons.zip
* WINTERMUTE: Update detection for Five Lethal Demons
Download:
http://web.archive.org/web/20070705114336if_/http://dead-code.org/5ld/5ld_setup.exe
* WINTERMUTE: Update detection for Five Magical Amulets
Download:
http://web.archive.org/web/20070505233127if_/http://www.nacht-und-nebel.org/download/fma.exe
Download:
http://www.flint.cba.pl/fusion_7/downloads.php?cat_id=1&download_id=1
Download: http://dead-code.org/5ma/5ma_deutsch.exe
* WINTERMUTE: Update detection for Actual Destination
Download:
http://web.archive.org/web/20111121174804/http://mrburns.tks.bth.se/ds/ds08/magv08/Actual%20Destination.rar
* WINTERMUTE: Update detection for Boredom of Agustin Cordes
Download: http://www.cbe-software.com/Games/Boredom/setup_boredom.exe
* WINTERMUTE: Update detection for Alimardan's Mischief
Buy: https://store.steampowered.com/app/694420/Alimardans_Mischief/
* WINTERMUTE: Update detection for Alimardan Meets Merlin
Buy: https://store.steampowered.com/app/694430/Alimardan_Meets_Merlin/
* WINTERMUTE: Update detection for Beyond the Threshold
Download: http://www.nacht-und-nebel.org/pcg/BeyondTheTreshold.zip
NOTE: This game's executable has a very strange version 1.7.94 not
listed in changelog.
* WINTERMUTE: Update detection for Basis Octavus
Download: http://kraaca.cz/wp-content/files/basis-octavus.zip
* WINTERMUTE: Update detection for Bickadoodle
Download: https://www.moddb.com/games/bickadoodle/downloads
* WINTERMUTE: Update detection for Book of Gron: Part One
Download: http://questzone.ru/download/gr/BookOfGron.rar
* WINTERMUTE: Update detection for Chivalry is Not Dead
Download: https://games.squinky.me/downloads/chivalry/chivalry.zip
* WINTERMUTE: Update detection for Carol Reed series
I assume that Carol Reed 4 EN use the same engine as Carol Reed 4 RU.
For other versions I assume that Demo and Full versions are sharing the
same engine version.
Demos: http://www.mdna-games.com/
Buy: http://www.mdna-games.com/
* WINTERMUTE: Update detection for Corrosion
Buy:
https://store.steampowered.com/app/349140/Corrosion_Cold_Winter_Waiting_Enhanced_Edition/
* WINTERMUTE: Update detection for Dead City
Download: http://dead-code.org/download/games/deadcity.zip
* WINTERMUTE: Add detection for Dark Fall: Lost Souls
This is a 2.5D game that is out of ScummVM scope
* WINTERMUTE: Update detection for Dirty Split
Download: https://dreamagination.itch.io/dirty-split
* WINTERMUTE: Update detection for Dreamscape
Download:
http://web.archive.org/web/20111121174150if_/http://mrburns.tks.bth.se/ds/ds08/vida08/Dreamland.rar
* WINTERMUTE: Update detection for Dreamcat
Download: https://jennibee.itch.io/dreamcat
* WINTERMUTE: Update detection for Des Reves Elastiques Avec Mille Insectes Nommes Georges
Download: https://games.squinky.me/downloads/dreaming/dreaming.zip
* WINTERMUTE: Update detection for DFAF Adventure
Download: https://jennibee.itch.io/dfaf-adventure
* WINTERMUTE: Add detection for Dr. Bohus
Author: Local Studio
Description: Saving the world from outbreak of a mysterious disease
Language: Czech
Licence: Freeware
Download:
http://www.freegame.cz/hry-ke-stazeni/zdarma/adventury/dr-bohus/13266
* WINTERMUTE: Update detection for Escape from the Mansion
Download:
https://escapefromthemansion.com/files/EscapeFromTheMansion_v1.3.zip
* WINTERMUTE: Add detection for Finding Hope
Finding Hope is a hidden object game made with Wintermute engine by
Golden Bough Games.
Try & Buy: https://www.bigfishgames.com/games/5960/finding-hope/
* WINTERMUTE: Add detection for The Death of Erin Myers
Buy links and details: http://www.viperante.com/short.htm
* WINTERMUTE: Update detection for Four
Download: http://mentalscraps.com/Four.zip
* WINTERMUTE: Add detection for Face Noir
This is a 2.5D game that is out of ScummVM scope
* WINTERMUTE: Update detection for Hamlet
Buy: https://store.steampowered.com/app/222160
* WINTERMUTE: Update detection for Framed
Download:
http://web.archive.org/web/20111121173916if_/http://mrburns.tks.bth.se/ds/ds08/maqk08/Framed.rar
* WINTERMUTE: Update detection for James Peris
Download: http://www.jamesperis.com/jamesperisweb-a.htm
* WINTERMUTE: Update detection for Project Lonely Robot
Download:
http://web.archive.org/web/20111121173634if_/http://mrburns.tks.bth.se/ds/ds07/stgo07/Projectlonelyrobot.rar
* WINTERMUTE: Update detection for Helga Deep In Trouble
Download: http://helgagame.com/download/helgainstall.exe
* WINTERMUTE: Update detection for Ghost in the Sheet
Demo: https://ag.ru/games/ghost-in-the-sheet/demos/24978
* WINTERMUTE: Add detection for K'NOSSOS
Demo: http://svarunentertainment.com/
* WINTERMUTE: Update detection for Open Quest
Download: https://github.com/JenniBee/openquest/releases/tag/v1.0
* WINTERMUTE: Update detection for Night Train
Download: https://www.moddb.com/games/night-train/downloads
* WINTERMUTE: Update detection for Mirage
Download:
http://web.archive.org/web/20111121173733if_/http://mrburns.tks.bth.se/ds/ds08/sasl08/Mirage.rar
* WINTERMUTE: Update detection for kulivocko
Download: https://ulozto.net/!Ge2FUW8q/kulivocko1-zip
* WINTERMUTE: Update detection for Looky
Demo: https://mac-bs.de/homepage/downloads/Looky_Demo_Setup.exe
Download: https://bullshit-softworx.itch.io/looky-adventure
* WINTERMUTE: Add detection for One
Demo: http://rcorp.wz.cz/one/one%20DEMO.rar
* WINTERMUTE: Update detection for Pizza Morgana
Download: http://pizza-morgana.com/download/episode1
* WINTERMUTE: Update detection for One Helluva Day
Demo: https://store.steampowered.com/app/603680/One_helluva_day/
* WINTERMUTE: Update detection for reversion1&2
Buy: https://steamcommunity.com/app/270570 ,
https://store.steampowered.com/app/281060
Source for old versions: https://bugs.scummvm.org/ticket/11009 ,
https://bugs.scummvm.org/ticket/11011
* WINTERMUTE: Update detection for Project: Doom
Download:
http://web.archive.org/web/20111121180654if_/http://mrburns.tks.bth.se/ds/ds08/vida08/ProjectDoom.rar
* WINTERMUTE: Update detection for Silent Footsteps
Demo: http://frostlindgames.com/demo.html
Buy: https://store.steampowered.com/app/780740/Silent_Footsteps/
* WINTERMUTE: Update detection for Paintaria
Download: https://gamejolt.com/games/paintaria/17652
* WINTERMUTE: Update detection for Pigeons in the Park
Download: https://games.squinky.me/downloads/pigeons/pigeons.zip
* WINTERMUTE: Update detection for reversion1&2 (Linux & Mac)
* WINTERMUTE: Update detection for Rosemary
Download: http://gambit.mit.edu/loadgame/rosemary_eula.php
* WINTERMUTE: Update detection for Shaban
Try & Buy (English): https://www.bigfishgames.com/games/7157/shaban/?pc
Try & Buy (German): https://www.bigfishgames.de/spiele/7157/shaban/?pc
Try & Buy (Spanish): https://www.bigfishgames.es/juegos/7157/shaban/?pc
Try & Buy (French): https://www.bigfishgames.fr/jeux/7157/shaban/?pc
Try & Buy (Japanese): https://www.bigfishgames.jp/games/7157/shaban/?pc
Try & Buy (Dutch): https://www.bigfishgames.nl/spellen/7157/shaban/?pc
Try & Buy (Italian): https://www.bigfishgames.it/giochi/7157/shaban/?pc
Try & Buy (Portuguese):
https://www.bigfishgames.com.br/jogos/7157/shaban/?pc
* WINTERMUTE: Update detection for Rhiannon
Demos: https://ag.ru/games/rhiannon-curse-of-the-four-branches/demos
Demo:
http://download.fileplanet.com/ftp1/122008/Rhiannon_Demo_C5_setup.exe
Buy: https://store.steampowered.com/app/298140
* WINTERMUTE: Update detection for Space Invaders demo
Download: https://docs.google.com/file/d/0B1Y5w30FUPM7bk1UQ1BGR2ZVZ2s
* WINTERMUTE: Update detection for Sofia's Debt
Download:
http://www.artisticsoft.com/flyers/deudadesofia/La%20Deuda%20de%20Sofia.zip
Download:
http://www.artisticsoft.com/flyers/deudadesofia/Sofias%20Debt.zip
* WINTERMUTE: Update detection for The Kite
Download: https://anatolii.itch.io/the-kite
* WINTERMUTE: Update detection for The Box
Download: http://web.archive.org/web/20111121180051if_/http://mrburns.tks.bth.se/ds/ds08/maqk08/packages.rar
* WINTERMUTE: Update detection for The Driller Incident
Download: http://questzone.ru/enzi/files/1645
* WINTERMUTE: Update detection for The Ancient Mark
Download: https://www.moddb.com/games/the-ancient-mark-episode-1/downloads
* WINTERMUTE: Update detection for Tanya Grotter dilogy
Buy:
https://www.soft-moscow.ru/goods/tanya_grotter_i_magicheskiy_kontrabas.htm
Buy:
https://www.soft-moscow.ru/goods/tanya_grotter_i_ischezayushchiy_etag.htm
* WINTERMUTE: Update detection for Space Madness
Demos:
http://web.archive.org/web/20150520160556/http://www.spreadcamp.com/downloads/SM-DEMO_English_and_German.exe
* WINTERMUTE: Update detection for The Shine of a Star
NOTE: http://questzone.ru/enzi/game/2502 states that this game is
freeware since 29.07.2013
Download: http://forgottenkey.se/TSoaS/TSOAS.msi
Archive: https://web.archive.org/web/20190116104138if_/http://forgottenkey.se/TSoaS/TSOAS.msi
* WINTERMUTE: Update detection for The White Chamber
Download:
http://www.studiotrophis.com/downloads/thewhitechamber1.7SETUP%20-%20Definitive%20Edition.exe
Download:
http://www.indiedb.com/games/the-white-chamber/downloads/the-white-chamber-17
* WINTERMUTE: Update detection for Trader of Stories
Download demo: http://www.rudowscy.com/download/theTraderofStories.zip
Full version is not made with Wintermute: http://www.rudowscy.com/tos1/
* WINTERMUTE: Update detection for Zbang! The Game
Download: http://www.corbomitegames.com/zbang/download.php
* WINTERMUTE: Update detection for Vsevolod
Download: http://public.ag.ru/vd/c16b434cc9656d4ca5856150c8fc9b18/demos/23267/Vsevolod-Prologue.exe
* WINTERMUTE: Update some comments
* WINTERMUTE: Update detection for Toshechka and Boshechka
* WINTERMUTE: Update detection for Wilma Tetris
Download: http://web.archive.org/web/20160330072540if_/http://dead-code.org/misc/wtetris.zip
* WINTERMUTE: Add detection for WME Technology Demo 1.2
Download: http://www.dead-code.org/download/wme_demo.zip
* WINTERMUTE: Update detection for reversion1 (bug 11011)
This fixes https://bugs.scummvm.org/ticket/11011
|
|
There is a bug introduced in WME Lite.
Testcase:
1. Download https://github.com/lolbot-iichan/wme_testsuite/tree/master/slider_test/packages
2. Download https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/wmelite/wmelite_10_win.zip
3a. Run game.exe -> Slider moves with the mouse while it is pressed and
released when mouse is released
3b. Run wmelite.exe -> Slider is never released
3c. Run ScummVM -> Slider is never released
Related bugs:
https://bugs.scummvm.org/ticket/6567
https://bugs.scummvm.org/ticket/9861
Reason: slider is a button object that changes it's X until "LeftRelease" event is revieved and breaks the endless loop.
Sample code: https://github.com/lolbot-iichan/wme_testsuite/blob/master/slider_test/data/interface/system/speechvolume.script
However, WME Lite does not send "LeftRelease" events to any objects, if Game object can handle such event, even is game is frozen and UI is shown.
Original code: https://github.com/lolbot-iichan/Wintermute-Engine/blob/master/src/engine_core/wme_ad/AdGame.cpp#L2218
Changed in WME Lite: https://github.com/lolbot-iichan/wmelite/blob/master/src/AdGame.cpp#L2120
This behaviour was introduced in SVN period of wmelite, I believe it was
made on purpose for handling some iOS scenarios at commit #37 mentioned
on page https://code.google.com/archive/p/wmelite/source/default/commits
My proposal is to mark iOS apps as WME_LITE and fill exact WME_1_X_X/WME_LITE versions for all known
games. WME_1_X_X can be seen by right-clicking on main executable and seems to be non-empty for almost all existing WME games.
|
|
* WINTERMUTE: Add detection for "The Driller Incident"
"The Driller Incident" is a small freeware game for Wintermute,
avaliable in English and Russian: http://questzone.ru/enzi/files/1645
* WINTERMUTE: Add detection table for "One Helluva Day" demo
"One Helluva Day" is a point-and-click adventure demo in English / Czech
/ Russian.
Free download:
https://store.steampowered.com/app/603680/One_helluva_day/
* WINTERMUTE: Support CHARSET property for TT fonts
"// we don't need this anymore" was a mistake =)
Surely, most Wintermute games are either designed for 1252 language
(DE_DEU, EN_ANY, ES_ESP, FR_FRA, IT_ITA, PT_BRA), or don't use TrueType
fonts (5ma, deadcity, grotter1, grotter2, thekite, tib), or use
CHARSET=1 with UTF strings (dirtysplit, reversion1, reversion2, twc),
which meen this conversion is not needed for those games.
However, there are some games that explicitly states CHARSET=10 (driller
(RU_RUS), oknytt (RU_RUS), onehelluvaday (UNK_LANG when playing as
Russian)) and there are some games with CHARSET=1 with non-1252 in mind
(bookofgron (RU_RUS excepts 1251), carolreed4 (RU_RUS excepts 1251),
kulivocko (CZ_CZE excepts 1250)).
This fixes text in some games: bookofgron, carolreed4, driller, kulivocko,
oknytt, onehelluvaday.
* WINTERMUTE: Break savegame compatibility
sizeof(BaseFontTT) was changed, so let's break savegame compatibility
* COMMON: Add conversion tables for win1253 and win1257
* COMMON: Add string conversion from U32String back to Common::String
convertUtf32ToUtf8 code is based on Wintermute::ConvertUTF32toUTF8
convertFromU32String use convertUtf32ToUtf8 for UTF8 or lookup through
conversion table for single-byte encodings
* WINTERMUTE: Use Common::convert functions for non-UTF charsets
* WINTERMUTE: Fix whitespaces at detection tables
* WINTERMUTE: Add TODO comments
|
|
This fixes defect #10684: 1-pixel width sprite becomes a big rectangle
if rotation is applied.
Case was originally reproduced with FoxTail game for WME, then reduced
to testcase
https://github.com/tobiatesan/wme_testsuite/tree/master/time_test/packages
|
|
Game.OpenDocument() is used to open links for developer's site or social
account in games like hellavuday, 5ld, etc.
|
|
localization packages
* WINTERMUTE: Add detection for unsupported "Basis Octavus" game
This game is not supported by ScummVM, because it's 2.5D. However, there
are already other 2.5D games in detection table and the intent is to add
all known games, and support 2.5D in ResidualVM later.
* WINTERMUTE: Add detection for Alimardan dilogy
"Alimardan's Mischief" and "Alimardan Meets Merlin" are games by Iranian
developer Resana Shokooh Kavir (http://rskgd.com/)
It seems that Persian versions also exist, I'll surely look at it later:
https://www.digikala.com/product/dkp-75901
There were 2 steam releases for alimardan1:
https://steamdb.info/depot/694421/manifests/
There was only one steam release of alimardan2:
https://steamdb.info/depot/694431/manifests/
* WINTERMUTE: Add detection for Oknytt 1.12
Oknytt had 2 steam releases (1.12 and 1.13):
https://steamdb.info/depot/286321/manifests/
I have downloaded 1.12 and added detection.
* WINTERMUTE: Add empty strings between detection table lines
* WINTERMUTE: Add detection for Steam versions of reversion1 for Windows
Source: https://steamdb.info/depot/270572/manifests/
* WINTERMUTE: Add detection for Steam version of reversion1 for Linux
Source: https://steamdb.info/depot/270571/manifests/
* WINTERMUTE: Fix localization loading for Mac and Linux
Mac and Linux builds of reversion1 & reversion2 does not have any
"languages" folders.
So, we need to filter those files according to filenames too.
Once there is such filtering, there is no need for this overspecific
hack for revision1's xlanguage_pt.dcp.
* WINTERMUTE: Add detection for Steam versions of reversion2 for Windows
Source: https://steamdb.info/depot/281061/manifests/
* WINTERMUTE: Language packages priority for Linux & Mac
* WINTERMUTE: Add detection for Steam versions of reversion2 for Linux
Source: https://steamdb.info/depot/281062/manifests/
* WINTERMUTE: Add detection for Steam versions of reversion2 for Mac
Source: https://steamdb.info/depot/281063/manifests/
* WINTERMUTE: Add detection for Steam versions of reversion1 for Mac
Source: https://steamdb.info/depot/270573/manifests/
* WINTERMUTE: Add detection for old Desura versions of reversion2
Source: https://bugs.scummvm.org/ticket/6564
* WINTERMUTE: Add detection for Spanish versions of reversion1&2
As was shown by windlepoons, xlanguage_* contains additional translation
package, while data.dcp contains original translation (which is
Spanish).
So, even without owning those old releases of reversion1&2, I can wrote
detection tables for them by not looking for any "xlanguage_*.dcp" file.
However, we shouldn't use WME_ENTRY1s for Spanish, because advanced
detector say "new best match, removing all previous candidates" once it
hit a WME_ENTRY2s. Instead, let's just look for data.dcp twice to give
user a choice of several WME_ENTRY2s. Lor Linux, it's WME_ENTRY3s.
* WINTERMUTE: Filter language packages ignoring folder name
There are 4 types of multilang games:
1. Each installation contain a data.dcp package (same for all languages)
+ an additional language package. Other localization packages are not
installed. Those games are: "Helga Deep In Trouble", "Dirty Split",
"Looky".
2. Each installation contain a data.dcp package (same for all languages)
+ a folder with all localization packages + a single "selected" language
package copied to main folder. "xlanguage_" prefix is usual for
reversion series. Other games usually use "english.dcp", "spanich.dcp",
"czech.dcp", etc.
Those are: "Five Lethal Demons", "Five Magical Amulets", "Dead City",
"Oknytt", "Reversion: The Escape", "Reversion: The Meeting".
3. All localizations are inside data.dcp all-together. Those are: "One
Hellavu Day", "The White Chamber" and "James Peris: No License Nor
Control".
4. Different data.dcp build for each language. All other known games are
here.
This code covers all known filenames for localization packages and
provide several guessworks for ignoring all irrelevant localization
packages.
* WINTERMUTE: Add localization detection for Five Lethal Demons
* WINTERMUTE: Tweak detection for Dead City (Czech)
"english.dcp" is not required to play Dead City in Czech language, so we
don't need to detect it
* WINTERMUTE: Add detection table for Looky in English
I got English version here:
https://bullshit-softworx.itch.io/looky-adventure
* WINTERMUTE: Add detection for Czech versions of Helga
"english.dcp" happen to be optional
|
|
This kind of fixes https://bugs.scummvm.org/ticket/6572 WME: Rosemary -
Sprite flaw on going upwards
Some Rosemary sprites have non-fully transparent background pixels,
sprites of walking up has LOTS of them. Testing Rosemary walking
character in a test WME game demonstrates some glitches with original
WME as well. However, character sprite is downscaled most of time, and
with original WME it isn't that seen when sprite is downscaled.
This pull request provides a workaround for this case instead of
changing downscaling algorithms:
* if game ID is "rosemary"
* if loaded sprite is from "actors" folder
* if bytesPerPixel is 4
* if some pixel's alpha is between 1 and 15
* set this pixel's alpha to 0
|
|
|
|
|
|
|
|
|
|
This code is used only in debug mode and only to display some script
counters.
States are handled in the very same way in WME Lite, so there is no
reason to log tons of warning here.
|
|
Tanya Grotter series has a cheat, that is triggered with
(Keyboard.IsKeyDown("A") && Keyboard.IsControl && Keyboard.IsAlt &&
Game.DebugMode) condition.
vKeyToKeyCode(97) would produce a warning message, fixed this.
|
|
Missing path is
"d:\engine\ТГ2\tg_ie_080128_1005\data\interface\pixel\pixel.png" from
scenes\code\episode_01\scene_comics_1\scene_comics_1.scene
|
|
It's hard to believe, but this fixes bug "#10432" WME Carol Reed
Mysteries hint system not working.
Carol Reed hint system happen to heavily use line.Split(";") results,
which were wrong by 1 byte (delimeter was appended to result while it
shouldn't be).
I started with decompiling Carol Reed source code, reproducing issue
with a stand-alone test project (which worked with WME and showed [null]
with ScummVM). then minimized it to a minimal testcase:
var line = new String("New Goal;Visit Christina at the Art
Museum;1;0;S;;");
var ar = line.Split(";");
if((ar[0] == "New Goal")) { var g = ar[1]; }
|
|
This is shown for the 2 games added in
0d8834b5616aa8fc936c750ed92ef4423610d641, as both of them use
ACTOR3DX entities, i.e. 3D models, which are not supported in ScummVM
|
|
|
|
|