alexbatalov / fallout2-ce Goto Github PK
View Code? Open in Web Editor NEWFallout 2 for modern operating systems
License: Other
Fallout 2 for modern operating systems
License: Other
It seems to happen only on larger maps such as arcaves.map and broken1.map and not the smaller ones such as artemple.map or desert1.map .
When loading certain maps the tileSetCenter
function fails and returns -1 on the following check:
Lines 508 to 512 in 0c61f74
My guess is that the code above checks whether the center tile is outside of the scroll block area.
I suspect that the bug is somewhere in the _tile_set_border
function. Specifically, this part looks suspicious as the windowWidth
parameter is not used anywhere:
Lines 402 to 405 in 0c61f74
Flint is not in the inventory after a successful speech check.
Obtaining it by giving your aunt a healing powder works fine.
SLOT10.zip
PS. Just started a testing play through, so there's hopefully more bug reports on it's way.
Hello everyone. I decided to make this branch, because I think it can be useful to the project as a beta testing.
I just started playing (reached Klamath) and have already discovered several bugs (I use PS Vita version 1.0.0-vita.2):
As the port progresses, I will supplement this post with new bugs discovered and thank you so much for this port, I've been waiting for it since I bought myself a PS Vita =)
I haven't get this quest yet (you can check this by entering into a dialogue with Rebecca, asking her about new job), but it is already displayed in the status of the city as a recieved quest: SLOT04 (The Den, Rebecca's Book).zip
This happens immediately after the first completed quest from Rebecca ("Collect money from Fred").
Can you set cmake to detect system libraries first, then use in tree sources
Game is crashing after I'm giving a pistol to the merchant (for speed loader upgrade) in New Reno
SLOT01.zip
Tested with x64 build on both Linux and Windows
When teammates (for example, Vic or Sulik) get a new level, the status bar does not give out their names. Instead of names, the console outputs «%s»
Bug Replay:
While Sulik's leather jacket is in your inventory, you will not be able to save the game. When you try to throw this jacket on the ground, it just disappears.
Save file: SLOT08.zip
Palette fading is painfully slow on both iPhone and iPad. On iPhone viewport is scaled down, which makes virtually all text an unreadable mess. Gameplay performance is very poor. On iPad viewport is scaled up, which looks better, but since there is no antialiasing, there are unexpected pixels all over the screen. Performance-wise it's playable. It's definitely not ready for prime time due to rendering issues and lack of controls.
After the first visit to the Den, a Highwayman isn't at the parking lot Smitty's: SLOT03 (The Den, Highwayman).zip
As far as I remember, the car should be located near the Smitty house.
As in #17 I was able to run the game in modern macOS 12.3 in 64-bit mode. Hacks mostly, no movies, no sound, increased CPU usage and some odd scripting errors, but it works.
crash when i set language to french ...
Hey, i dont know how to compile any things, i tried compile fallout2-ce for android today and i fucked up, maybe you can add small guide how to compile that? That's is work of five minutes, i guess.
After passing this quest, the interface just freezes. You cannot exit the dialog, you can only enter the inventory and barter.
SLOT03.zip
Random encounters aren't triggering while traveling on the world map.
In the late AUG the first Frank Horrigan encounter starts up and the player receives a car after it's finished (but it's not shown on the town maps. Only on the world one)
SLOT07.zip
Game version 1.0.1
Tested on Linux x64 and Windows x64
When I try to run fallout2-ce I get a "couldn't find/load/text fonts." I've copied the entire data folder for fallout 2 over, and I put the fallout2-ce into the fallout 2 directory. It looks like this:
/Games/fallout2/
-Data/
-sound/
-CRITTER.DAT
-fallout2-ce
-MASTER.DAT
-PATCH000.DAT
Can't proceed past the Interplay logo cinematic. Phone is a Samsung A52. (thanks for your hard work!)
Greetings!
The code is confusing. I want to turn functions into static classes. This will break dependencies. Remove global variables. Remove extern variables. The changes will affect all code. Are you ready to accept commits?
After refactoring. Pass dependency to constructor. Opens the door to writing tests.
It thinks the binary is a shared library and suggests to open it with some other program. It does work when run from terminal. Check if -no-pie
helps.
See #25
If the game is built with -O1 or -Og optimization levels NPCs are not turning hostile through the dialog or when you're caught stealing. No logs on this one except the usual
Dialogue Reaction:
Said Bad
I also suspect that dialog triggers aren't working correctly too (like the ones that's triggered when you're entering the room with NPC for example).
I could reproduce on gcc 12.1.1 on Linux and 10.3 on PS Vita. I guess the compiler is optimizing some bugs away.
Feature proposal to make the starting map configurable. My use case is to launch fallout directly from my map editor. Modders will find this useful for testing their maps without having to recompile fallout2-ce.
Sfall already includes this option:
[Misc]
;To start a new game somewhere other than artemple.map, uncomment the next line and set it to the map you want to load
;StartingMap=
Started the game in window mode, after alt+tab out of it and then going back, none of the hotkeys are working anymore.
One of the rules I followed during decompilation - do not hide anything from yourself. That's why all functions, variables, and typedefs are exposed in headers. In order to prepare for code modernization phase headers need to be cleaned up of everything that might be considered implementation detail to appropriate module (i.e. private). That simply means moving many things from h
files into cc
, making variables and functions static
in the process. In the end I expect whatever is left in headers is a part of public API. Please note that due to the way this project is structured, there might be some extreme cases like editor.h
which has about 2-3 public functions and everything else is private. Don't forget to about moving includes. Prefer one h
-cc
pair per PR as it's easier to track.
actions.h
animation.h
art.h
audio_file.h
audio.h
automap.h
autorun.h
cache.h
character_editor.h
character_selector.h
color.h
combat_ai_defs.h
combat_ai.h
combat_defs.h
combat.h
config.h
core.h
credits.h
critter.h
cycle.h
datafile.h
db.h
dbox.h
debug.h
dfile.h
dialog.h
dictionary.h
dinput.h
display_monitor.h
draw.h
electronic_registration.h
elevator.h
endgame.h
export.h
file_find.h
file_utils.h
font_manager.h
game_config.h
game_dialog.h
game_memory.h
game_mouse.h
game_movie.h
game_palette.h
game_sound.h
game_vars.h
game.h
geometry.h
graph_lib.h
grayscale.h
heap.h
interface.h
interpreter_extra.h
interpreter_lib.h
interpreter.h
inventory.h
item.h
light.h
lips.h
loadsave.h
main.h
map_defs.h
map.h
memory_defs.h
memory_manager.h
memory.h
message.h
mmx.h
mouse_manager.h
movie_effect.h
movie_lib.h
movie.h
nevs.h
obj_types.h
object.h
options.h
palette.h
party_member.h
perk_defs.h
perk.h
pipboy.h
proto_instance.h
proto_types.h
proto.h
queue.h
random.h
reaction.h
region.h
scripts.h
select_file_list.h
selfrun.h
skill_defs.h
skill.h
skilldex.h
sound_decoder.h
sound_effects_cache.h
sound_effects_list.h
sound.h
stat_defs.h
stat.h
string_parsers.h
text_font.h
text_object.h
tile.h
trait_defs.h
trait.h
trap.h
version.h
widget.h
win32.h
window_manager_private.h
window_manager.h
window.h
word_wrap.h
world_map.h
xfile.h
This is the only thing left for initial release.
I started a new game and killed a few enemies, then went poking around in the character sheet, only for it to crash, with the only message in the terminal being Segmentation fault
. Repeated attempts have revealed that it only happens if I've killed at least one scorpion and open the kills tab. If I've only killed ants, then it works as intended. This happens when using data files from both the CD release and the Steam release.
All 3 major platforms now use different ways to manage dependencies (cmake's FetchContent
on Windows, apt
on Linux, homebrew
on Mac). There is a vcpkg
which can probably help to unify it, but needs some research.
Are these modifications supported?
Fallout 2 Unofficial Patch
Killap Unofficial Fallout 2 patch
Howdy, I run the site Mac Source Ports and this looks like an excellent thing I could add to the site (I either make builds or point to builds of source ports for Mac, preferably with Apple Silicon support).
So first off I can tell you yes the build you've got for Intel works fine on Apple Silicon via Rosetta 2.
And since it looks like the only real dependences this has are SDL2 and lib, I'm willing to bet it works on Apple Silicon without much effort.
I may take a swing at making a Universal 2 build but since you're signing and notarizing it if you want to do it yourself I'll just link to yours.
Either way, this is outstanding work, thanks for sharing it with us.
I have a problem with compilation. I use Manjaro 64 bit.
fallout2-ce/src/audio_file.cc:95:29: error: cast from ‘FILE*’ to ‘int’ loses precision [-fpermissive]
95 | audioFile->fileHandle = (int)stream;
This issue is for tracking progress for intergrating Sfall. Sfall itself is organized as a collection of modules. Some are small, focused, and will be relatively easy to implement, some are not. Bugfixes
is huge. Do not work on shaders and sound stuff, these require major changes in the underlying functionality. If you want to work on any module, convert task to issue and assign yourself, so it's easy to see the module is being taken care of. If the module is big, provide it's own todo list. Prefer small, focused PRs, even if it's only one line. Keep original comment from Sfall if it makes sense. Annotate your changes with SFALL
. See 7db7a9a as a super simple example.
I'm not sure how significant differences between Fallout 1 and 2 are, only creating this issue to track the amount of work needed to make this project compatible with both versions, if possible and if maintainers are interested in this?
As the title.
In the town of trappers there is such a character as Slim Pocket. For 100 (with a low reputation in Klamath) or 50 coins (with a high reputation), Slim Pocket can train a player to hunt Gekko. The bug lies in the fact that after training, the money is not received by Slim Pocket, but by the player.
This is a fairly well-known bug (in this case, it's not a port bug, it's a bug of the original game) and I thought it could fixed. If the goal of the project is to make the port match the original version of the game as much as possible, then I think that this bug can be left for authenticity and just close this issue.
Here's a save file: SLOT01.zip
I draw your attention to the fact that Slim Pocket is a rather capricious character and may not agree to teach the player the first time. You just need to ask him about it several times. Thanks.
Subj. Since we have releases now it would be great to have some kind of changelog. CHANGELOG.md in project root will do the trick i guess.
F.e.: https://gitlab.com/OpenMW/openmw/-/blob/master/CHANGELOG.md
Fading in main menu screen takes about 10 seconds. Gameplay performance is also sluggish compared to Windows and virtualised Ubuntu.
The project compiles and runs under linux after some changes and commenting out the audio code. Below is the list of functions and macros that need to be reimplemented for linux:
_splitpath
filelength
stricmp
→ alias to strcasecmp
strnicmp
strupr
strlwr
itoa
CopyFileA
timeGetTime
GetTickCount
min
→ macro #define MIN(a, b) (((a) < (b)) ? (a) : (b))
max
→ macro #define MAX(a, b) (((a) > (b)) ? (a) : (b))
_MAX_DIR
→ ?_MAX_FNAME
→ FILENAME_MAX
_MAX_EXT
→ ?MAX_PATH
→ PATH_MAX
Also, what about the mutexes? I don't understand what the autorun.c/h file is for except preventing multiple instances of the game being run.
I was following installation instructions for Android from the readme, but it seems that the junk folders that the .apk created in com.alexbatalov.fallout2ce.debug/files
are read-only, i can't delete them on PC or the device itself (it's not rooted). Trying to overwrite them with Fallout 2 data files also fails.
There has already been a mention of failures in the interface in #96 and #99.
In the latest release (Development Build), these problems were solved, but when trying to hand over Sulik to Metzger, it ends with a crash in the interface.
Save File: SLOT04.zip
Today can play fallout 2 only through emulators on phones.
Is it possible to compile for these systems ?
Right now macOS app require latest Monterey, which is somewhat limiting. It does build for Big Sur, but complains on sdl2
installed via brew
. This is probably easily fixed. However it does not build for Catalina (10.15) because of std::filesystem
usage.
Dialog window is not closing and is "stuck" after the dialog has ended.
Steps to reproduce:
Hey, i tested f2-ce on my phone yesterday and it crashes when i trying start new game, i can create char and i can view elder monologue, but game crashes when starts loading temple enter map.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.