Comments (11)
That was done the same in the original game. The Virtual Machine is using the exact same bytecode from the DOS version.
from another-world-bytecode-interpreter.
Do you mean the strings were stored in the virtual machine executable? ANOTHER.EXE ?
from another-world-bytecode-interpreter.
I don't remember seeing string ressources in the banks so i assume there
were in the exe.
Can you be more explicit: Which strings are you referring to ? Can you
provide exemple/ screenshot ?
Fabien
Sent from my iPhone
On 2013-02-11, at 2:46 PM, felipesanches [email protected] wrote:
Do you mean the strings were stored in the virtual machine executable?
ANOTHER.EXE ?
—
Reply to this email directly or view it on
GitHubhttps://github.com//issues/7#issuecomment-13398786.
from another-world-bytecode-interpreter.
I'm refering to strings such as "Good evening professor.".
In a proper game engine these would be considered game data and so it would be stored as a game resource. But I can understand that maybe Eric did not bother to implement a proper generic game engine and may have ended up hadcoding game specific strings in the interpreter.
But then, we have the demo version, that uses different strings...
from another-world-bytecode-interpreter.
Additionally, there is a copyright issue here. If we ship copies of the strings in the free software game engine, then we're infringing Eric's copyright. To avoid copyright infringement we should load the strings from wherever they are in the original game files.
from another-world-bytecode-interpreter.
Ok I looked into the code but I would appreciate if you do this research
yourself in the future instead of asking:
In the VM you can see a method:
VirtualMachine::op_drawString
which calls:
Video::drawString
which looks for the string in
_stringsTableEng
Which can be seen here:
https://github.com/fabiensanglard/Another-World-Bytecode-Interpreter/blob/master/staticres.cpp
All those strings are from the executable.
On Mon, Feb 11, 2013 at 2:54 PM, felipesanches [email protected]:
I'm refering to strings such as "Good evening professor.".
In a proper game engine these would be considered game data and so it
would be stored as a game resource. But I can understand that maybe Eric
did not bother to implement a proper generic game engine and may have ended
up hadcoding game specific strings in the interpreter.But then, we have the demo version, that uses different strings...
—
Reply to this email directly or view it on GitHubhttps://github.com//issues/7#issuecomment-13399179.
from another-world-bytecode-interpreter.
But I did check all those details you mention in the code before asking.
I am asking exactly because I think it's weird that the game strings are hardcoded in the interpreter instead of loaded from the original game files.
from another-world-bytecode-interpreter.
Are you sure these strings are stored in ANOTHER.EXE ? If so, have you already discovered the encoding used to store it there? Because I can't find plain strings in ANOTHER.EXE by using the unix "strings" command.
from another-world-bytecode-interpreter.
There's an UNKNOWN resource:
R:0x11, RT_UNKNOWN size=25108 (compacted gain=25%)
with type=6
I have a hunch that it may contain the game-specific strings as well the font data.
from another-world-bytecode-interpreter.
Same comment here. Did you ever figure it out? The GBA also have the strings hard-coded.
from another-world-bytecode-interpreter.
I haven't yet figured it out, but I stumbled on this question again today: felipesanches/AnotherWorld_VMTools#15
from another-world-bytecode-interpreter.
Related Issues (12)
- Crash on OpenBSD/amd64 HOT 4
- _memList array should be dinamically allocated
- Doesnt work for me on Windows 7 HOT 2
- game hangs under linux while opening audio HOT 1
- Link to article HOT 5
- error compiling HOT 2
- done!
- resource type = 6 means _segVideo2 polygon data
- [FR] support demo versions HOT 2
- How to dump/encode bytecode ? HOT 2
- Figure out what's in the UNKNOWN 0x11 resource HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from another-world-bytecode-interpreter.