Recent Posts

Pages: 1 [2] 3 4 ... 10
11
Questions and Answers / Starting location
« Last post by 1ookg on November 08, 2023, 09:48:14 pm »
Hi!
I searched on the forum, but I didn't find it (
1) How and where can I change the starting location?
2) How can I make the transition to the next locations at this location?
12
Questions and Answers / Re: another silly question
« Last post by Medvedev(Req) on October 15, 2023, 05:43:55 pm »
There is now silly questions. just silly people. We are not, are we?

You should mark all the npc as belonging to your event. I usualy use NPC_ROLE parameter for that trick, or some secret buff. After event ends - by timer or by running some script - there should be runned cleaning function, that get all of the npc and delete those, who have your mark.
13
Questions and Answers / Re: FOclassic FOClient::SScriptFunc
« Last post by Medvedev(Req) on October 15, 2023, 04:46:14 pm »
Resolved it.

If it will be useful to someone: the problem was that client functions need to be declared in dummyData.h - otherwise the server's compiler will not know about their existence. The dummyData library must be compiled before the server, and you need to make sure that the final lib file  gets into the source folder for the server solution.

So, the procedure is as follows:
1. Writing a new function in client.cpp
2. Declare in client.h
3. Bind in ScriptBind.cpp (required in the block #if defined (BIND_DUMMY) || defined (BIND_CLIENT))
4. Additionally declare in dummyData.h
5. Clean and rebuild all the solutions of the project.
14
Questions and Answers / FOclassic FOClient::SScriptFunc
« Last post by Medvedev(Req) on October 14, 2023, 07:34:01 pm »
Hi. Looking for some help with client functions.

I added my new test function in client.cpp:

int FOClient::SScriptFunc::Global_test_a()
{
return 666666;
}


client.h in ScriptFunc block:
      static int          Global_test_a();

and scriptbind.cpp by FOCLASSIC_CLIENT defined:
      RegisterGlobalFunction( engine, "int test()", focFUNCTION( BIND_CLASS Global_test_a ), asCALL_CDECL );


Server is compiling without any errors. But trying to start with new function in client_main, i get "No matching signatures" error.
May be i didn't add my new function somewhere? But all other native functions are working.
15
Features & Articles / 9. Adding or modifying graphical assets.
« Last post by Slowhand on September 18, 2023, 07:48:41 am »
9. Adding or modifying graphical assets.

Client side:
  • Creating a custom animation frame file (.fofrm), for the item to show on map:
    • Navigate to ..\Client\data\base.zip\art\items\ folder, and look up the structure of a fofrm file.
    • Create the fofrm file as described below, but to a temporary location of your choosing, copy the image to it as described later.
    • fps=10 what fps will the animation of the item run, if there is animation, this is default 10, or sometimes 8.
    • count=1 how many frames are the for the animation, if it's 1 then the item has no animation.
    • offs_x=-23 move the middle of the image 23 pixels to the left, if positive then to the right. If this is 0, then it's centered on the X axis.
    • offs_y=50 move the whole image 50 pixels up, so if an image is 100 pixels tall, it would be centered on the Y axis.
    • [dir_0] this will tell the engine that frames will come for direction 0, which is how the item would look facing North-East on the map.
    • frm_0=fish_circling1_01.png this is the image file for the first frame in given direction. If your item uses animations, there will be more of these with the suffix increasing
  • Create image file:
    • Download random image from web or create the one with your favorite paint tool, use .png file type when you save it.
    • Custom images can contain all colors in 32 bit range, you can use transparency as well, thus .png files work best, as size not an issue. Side note: Original fallout 1/2 image files contained only up to 240 different colors and color blue was used for transparent color, but you don't need to worry about that.
  • Create inventory image - repeat this process for the image that will be shown in inventory, if the item is picked up.
  • Copy the .fofrm files and their images to the respective folder structure:
    • ..\Client\data\base.zip\art\items\ for items on the map
    • ..\Client\data\base.zip\art\inven\ for items in the inventory
  • Alternatively, use a new zip file (example: fishing.zip) to store the data, you need to copy the .fofrm files to:
    • ..\Client\data\fishing.zip\art\items\ for items on the map
    • ..\Client\data\fishing.zip\art\inven\ for items in the inventory
    • Add the new zip file (fishing.zip) to the config file to be loaded:
      • Edit ..\Client\DataFiles.cfg and add this new line data\fishing.zip after data\base.zip

Server side:
  • Adding the new item to the server
    • Open the file ..\Server\proto\items\misc.foproto
    • Find an item you wish to copy the attributes from and copy paste lines starting with [Proto] and ending with an empty line. Example: ProtoId=539 -which is the Meat
    • Make sure to keep the empty line between items.
    • There are various parameters you can change, but for simplicity we just copy flags, weight etc. from well working items.
    • You will need to change the following parameters to:
      • To change the image when the fish is dropped on the ground on a map, change this: PicMap=art\items\fishing\freshmeat.fofrm
      • To change the image when the fish is in inventory, change this: PicInv=art\inven\fishing\fish_1.fofrm
      • Give a unique ProtoID number, for example 26760, should look like this: ProtoId=26760
  • Name and description to the new item
    • Edit the file at location: ..\Server\text\engl\FOOBJ.MSG and add the following line accordingly keeping the sorted nature of the numbers in front of lines.
    • {2676000}{}{Fish} for the name of the item
    • {2676001}{}{Could be a derivative of Salmon and radiation.} for the description (or info) of the item.
    • Notice that the number 2,676,000 is 100 times 26,760, and the two last digits will have a special meaning, denoting name or info, hence I colored them differently above.


Testing it:
  • Once you logged in with your admin character, type the command: ~getaccess admin admin (In case you changed the admin password, use different password, if in doubt check the GM abuse tutorial at fodev.net questions and answer section)
  • You should get a message on top of the screen stating: "Mercenaries don't die - they just go to hell to regroup."
  • Type `give 26760 2 - this will give you 2 Fishes.
  • Hover over the Fish you got in inventory, click with default mouse cursor to show description info, and check if it's the same you have added.

CHEAT SHEET:


16
Questions and Answers / Re: Crash Win 10
« Last post by Slowhand on September 08, 2023, 01:26:25 pm »
Rado from FOnline: Parareal reported similar issue on certain feature for FOClassic - BNW, maybe this helps you too:

dx7.dll - 152.00 KB
d3dx9_42.dll - 1.80 MB

https://github.com/Sasabmeg/FOnline-BraveNewWorld/tree/dev/other/missing_dll

Also, if you don't know about FOClassic yet, Reloaded S2 is kinda dated by now, Reloaded S3/S4 uses FOClassic which uses 3.14 engine version. To use FOClassic easier, there is a sample here on forum named PReloaded by 'mojuk', which contains some S3 features but no S2 content, also for this reason I made BNW where among others I merged most of S2 content, you might want to try dev branch of:

https://github.com/Sasabmeg/FOnline-BraveNewWorld

Note: You will need to add fallout.dat or other zip files for client manually, as I have not added these due to copyright :) rest should be like running S2.
17
Questions and Answers / Crash Win 10
« Last post by KingR on September 02, 2023, 11:40:49 am »
Hi guys ! I am working on the version of Fonline Reloaded season 2, on Windows 7. And I have no problems.
On the other hand, I have a laptop, on which I installed Windows 10, and there the game, or the mapper, crashes with the direct X exe. Only the OPENGL exe works. How to correct this?

Thank you so much !
18
General Discussion / Re: Time for a change.
« Last post by mickmelon on August 03, 2023, 04:07:10 pm »
I appreciate Dagnir's point, but I see it differently. Not everyone's here for the crowd. Some of us enjoy the grind and the brain-bending challenges. That's the thrill of it, right?

Remember, FOnline was born out of a love for Fallout and a desire to keep that world alive in a new form. It's always been a passion project driven by a community of enthusiasts. That spirit is what's kept it going for almost two decades now, despite any splits or disagreements that have occurred along the way.

I think one reason for the dwindling numbers of FOnline is due to the game being so outdated. If this were to be recreated in Godot or a similar engine - and don't get me wrong, this is a mammoth of a task that will undoubtedly take years even if the scope was greatly reduced - then perhaps that's when it will begin to attract new players to the classic games. This goes not only for attracting new players, but also developers, because the SDK is so outdated now with clunky tools and using a shitty scripting language when there are many better languages today for this like C#.

To the OP, I appreciate your vision. You're right - the community's fragmented, the engine's outdated, and FOnline needs a serious revamp. Building something on Godot or a similar engine is a mammoth task, sure. But is it impossible? I don't think so. Whether it's worth it is a different question - and I would say it only seems worth it if you are thinking about the journey rather than the destination, because you may very well never get there in the end. There's also the point that if you're going to put this amount of effort into recreating the game in another engine, then why not start your own IP?

I would suggest an initial goal of getting a working demo in Godot. Port some assets, create a couple of maps, design a single quest, make it single-player. This gives us a tangible target to aim for and breaks down the mammoth task into more manageable stages. Then, we can build from there. It doesn't have to grow into another FOnline, instead it could form as the basis for fan games, not unlike what I believe cvet's goal is with his work on the FOnline engine nowadays.

The question I would have is what are the legal implications of this? You already see in ambitious projects like Skyblivion and Fallout 4: NV, they're having to recreate the assets and voice acting due to copyright reasons. Same goes for Take Two taking down Grand Theft Auto mods that port maps from one game into another.
19
Tools / Character creation and Mutation feature test tool.
« Last post by Slowhand on July 20, 2023, 09:00:57 pm »
Hi everyone.

I was working on the concepts of a new/old feature, Mutation, which would allow player to change their specials, skills, perks, trait and skill tags without removing their progress or implants via Book of Achievement character deletion option.

Since this feature is very problematic, first I made a character creation (or planning) tool in Java, that can be used to create and level up character and via dialogue test the mutation feature, as in to find possible exploits, bugs, loopholes, whatever...

Obviously introducing such a feature to the game is very risky thing (exploits found and not reported fixed by player mess up the characters of game, basically a free character stats cheat) and if failed game breaking (only fix would be to wipe and go next season rofl)

The workflow:
 - design Mutation concept (done)
 - make tool to test and fix the concept (done)
 - publish tool to players to test the concept and report issues (we are here)
 - fix the bugs in concept and retest
 - implement the FOnline code for the concept on a test server
 - test publicly once more (players need to download server and client, run it localhost to test)
 - fix reported bugs and thus feature is ready to deployment (if wanted) to FOnline servers

So, assuming this work gets ever finished and introduced to any of the FOnline servers at some point, here is the logic and the tool that can use to test for possible bugs. The character-planner or mutation feature testing tool, is based off game mechanics of Reloaded S3/S4 as FOclassic - BWN uses those.

Alternatively this tool can be used as on offline character-planner as well, assuming the java code get's modified to reflects one's own server mechanics, if those are different from it.

Feature concept: (logic or how mutation should work in specific cases is written in first few comments)
https://github.com/Sasabmeg/FOnline-BraveNewWorld/issues/52

Character-planner mutation tester tool: (Java 17+)
newest on git - https://github.com/Sasabmeg/foclassic-char-planner/blob/main/target/foclassic-char-planner.jar
newest on google drive - https://drive.google.com/file/d/1qjqGFzGwjWAc6uBi319RhR9MMZ6odkSs/view?usp=sharing

If anyone finds any bugs, they can report them here, on discord or on the github issues page above in comments.

To run the tool you'll need Java 17 or later. If you have trouble, make sure you uninstall previous java versions before installing java17 or later and if still issues, try the jarfix tool at: https://johann.loefflmann.net/en/software/jarfix/index.html

After jarfix double clicking JAR file in windows should run it, alternately you can open a console and type: java -jar foclassic-char-planner.jar
20
Questions and Answers / FOClassic (PReloaded) Elevators
« Last post by APA MK2 on June 25, 2023, 05:28:18 pm »
Hi all! I've set upped PReloaded SDK for a while time ago, and now i'm making little project based on, i started from locations making.
How i can make elevators? I'm confused in elevator scripts and can't understand how to setup any kind of this, examples from other projects like BNW not helps.  :'(
In advance, thanks for help.
Pages: 1 [2] 3 4 ... 10