Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - Dark_Phantom

Alright, so you're coming along in map-making and you're placing some ambient lights on your map.
First of all, in case you forgot or are new:
Lights are odfs of ClassLabel "Light". Light odfs are attached to hardpoints of a mesh using "AttachOdf" and "AttachToHardPoint" like this:
AttachOdf = "light_flicker"
AttachToHardPoint = "hp_light"

Great, we've got it attached.  There's one field here that has never been covered on this website and I'm here to see to it that it gets fixed. All lights in BF1 will default to FlickerType = 0, which is none (and if you put this in the odf, that's what you'll get, no flicker, just a light).

Ok, but you've got some lighting in a dim hallway and you want it to... do something.  You have three options.
FlickerType = StrobeFade //or just 3FlickerType = Pulse //or just 4FlickerType = Flicker //or just 5>>Note there's no quotes around the text, that's purposeful.  99% of the time when there is a string you want quotes, but not this time. It might work with but I know it doesn't without.  Actually I just use the numbers.

You're saying to yourself "Well Phantom, ok, I did see Flicker in one of the Kashyyyk files, but how'd you find out about the other 2?"
The case hex lines file on SecretSociety showed that there were more options than we were privy to by any of the files in BF1 or BF2.  I tested them ingame here:
0 = none
1 = Strobe, does not work, confirmed intended for CP/hologram usage, doesn't have functionality for normal lights
2 = StrobeRandom, does not work same as 1
3 = StrobeFade, works.
4 = Pulse, works
5 = Flicker, works

FlickerPeriod should certain time variables for all of the working ones.

Now go and make some awesome lights!
No, Battlefront 2 is from 2005 and I know of no games from that era that record their gameplay, let alone this one.

All videos need to be created outside of the game and run through the RAD game tools and MovieMunge.

More detailed instructions would need to come from someone who has done it before for BF2.
I'm not sure how to fix it on this side - but if you try to load the page as HTTP instead of HTTPS, many times it will load.
Or try a different browser.  Chrome doesn't like loading insecure download links on secure sites.  I've not come up with a solution at this time.
Quote from: blob on September 06, 2022, 05:41:38 PMam i the only one who finds that the steam version was ruined since the mp patch? not only referring to the forced fov / removal of 4:3 res, other things as well. not to mention incompatibility with at least 1 serejas map.

This is the hill I stand on every day, I'm glad I don't stand there alone.
SWBF1 Modding / Re: Flickering objects on mod map
August 24, 2022, 11:37:21 AM
Psych0fred tutorials are your friend:

Basically, object rendering is controlled through LODs, so you'll have to make sure your object has a low-rez model.  It will render all objects at high-rez unless it has something to flip to.  Portals in BF2 "fixed" this problem, as I understand it, by only rendering sectors as needed.  BF1 doesn't have portals, and thus will render everything in the viewport as high-rez unless there are low-rez meshes present.  Although I do think outside of the far-scene max range they shouldn't render at all.  Fog also greatly helps with this problem.

Credit to Sleepkiller for this image here:

QuoteBelow is a couple of screenshots showing how the game uses LOD models.

Red Spheres are LOD0 (Full Detail)
Green Spheres are LOD1
Blue Spheres are LOD2
Orange Spheres are LOWD (Low Detail/Far Scene models)
All spheres were ico spheres with each LOD model have one less subdivision than the last.

The map's near scene range values set to NearSceneRange(90.0, 400.0, 120.0, 600.0);.

ninja edit: things under the terrain, if they are in the viewport, will still render.  BF1 is mostly outdoor maps because this sucks for buildings which have to render stuff which isn't even visible to you.  The only way to "fix" this problem is to obscure the far objects with fog, edit your farscene range, or make low-rez meshes that can free up your games rendering memory.
Patch notes were only really contained in the official patch files.  The biggest changes were those that you found. (Sorry for external users but they're all on the download pages :( )

1.1 patch notes:;sa=view;down=41

1.11 patch notes here (basically only adds Jabba from 1.1, except that that's a pretty big addition lol):;sa=view;down=42

1.2 patch notes here:;sa=view;down=449

1.3 beta "quick notes" - 1.3 only works with the CD (not DVD, only original CD) version of the game but is also the basis for the Steam/GOG version.;sa=view;down=450

I have some of the differences between PC and Console documented but not in one place.  Maps like Geonosis have vastly different stats for the vehicles than the PC version for no discernable reason other than to make it easier for console players.  PC 1.0 and Console are the closest that the games are to each other - every PC patch deviates more from the console versions EXCEPT when Xbox got Jabba's Palace.
I usually recommend trying this first, it has better error handling than the official versions:;sa=view;down=1519

As long as you can create the project using BFBuilder, the rest of the handling can be done within the folder.  That initial creation though really needs done in BFBuilder because it modifies all the template files to be tailored to your map.
At this point, modding an Xbox is easier than ever.  At this point, at the very least, you should open the thing up and check your motherboard if it's not a 1.6 and remove the clock capacitor which tends to leak.

There are hundreds of guides out there now and limiting yourself to an unmodded 20 year old game system is not something that should be pushed to the modders.
What, you thought BF1 was dead? Not yet!

This tutorial will be a quick "How-To" on how to patch the fake console in YOUR game.  Few downloads (except for a hex editor and the mod tools), nothing too complicated.  I've posted other tutorials like this but I hope this one will be more practical.

Things you need:
1.) The SWBF1 Common/Shell Builders that I made in the downloads section
2.) The 1.2 patch of the game (Steam version will not work for this)
3.) A hex editor, such as XVI32 or Hexinator or PSPad or 010 Editor... there's 500 good options for this.
4.) Willingness to read directions

Step 1.)
This is probably the hardest step.  You're going to need the common/shell builders I made here:;sa=view;down=1552
Navigate to Common\Scripts\ifs_pausemenu.lua.  This file can be opened in something like Notepad or any text editor.
Search for "this.buttons.console.hidden" (without quotes)
Put two dashes in front of that line like this:
--this.buttons.console.hidden = gDemoBuild or gFinalBuildSave file, and navigate back to the main folder of the builder. 
Run MungeCommon.bat.  When it is finished, you're going to take the common.lvl which was created in _LVL_PC\Common\ENG\Common.lvl and replace the one in your games folder with it. (Something like C:\Lucasarts\Star Wars Battlefront\Gamedata\_LVL_PC\COMMON\ENG\common.lvl)

Step 2.)
Open up your hex editor and use it to open Battlefront.exe.  Once again, this part will only work on the 1.2 SWBFspy patch. Use your hex editors "Go To" function and enter 0x24a3c (or just 24a3c, if it allows).  This should navigate you to a few bytes like this:
0f 84 b9
Change it to
0f 85 b9

Technical reason: This allows a bypass of the console write instruction anytime it is accessed.  Essentially I changed a "jump if equal" to "jump if not equal" once I found a good place to put my change in as seamless as possible.

Step 3.)
Run your game and enter into any match.  You should be able to run the commands "invincible" and "unlimitedammo" without a crash.  In my experience, in case you were trying to be an expert hacker, this stuff generally does not work online, and can cause your game to desync and/or crash.

OK, so there's some stuff that's in SPTest that's not in the base game or doesn't work right.  Some stuff does not exist at all in the executable. A command like RenderCollision will not work because at compile time the game has already stripped out the debug renderers.  The command will do nothing.

One more cool thing, if you want to prove you're a top of the line hacker.  At 0x29fe9Ch exists a string "debugmenu" that the console menu uses to append to the commands.  Sounds boring right?  Change it to "ai" padded with 0's where the original text was.  When you enter the Fake Console now, the AI commands will populate.  The best ones are camup and camdown, which finally make my dream a reality of a real, accessible spectator mode in BF1.  Most of the others do not work because they require the debug actions or a console input to actually set up correctly.

Good luck and see you on the front!
I don't mean to sound like a stickler but have you asked the creator if that's ok with them? There've been a lot of incidents in the modding community in recent years that make asking for permission before extracting others' assets a good idea.
I'm sorry I haven't gotten back to you about this.  It's hard to explain how to do it succinctly, but a lot of it is trial and error.
I haven't forgotten though - when I have more time I'll get more detailed instructions on how to do what you're asking.
No, that's controlled by the game version, probably due to the console's already tight limitations.
Only if you're willing to remap them to the BF1 skeleton, otherwise straight up converting them to msh will just result in a blob ingame, if it works at all.
Sorry for not replying sooner.  The base mission files were in a different area of the assets and I totally forgot that I didn't write a script to move them if the stock map was selected.  Copying the lua like you did is correct. (I generally just swap out the stock maps and use the stock mission).

Remember if you're using this method, and using it as an addon map, you want to put "ReadDataFile("dc:\TAT1\Tat1.lvl")" or whatever, instead of what the main mission has.  (DC: means "Downloadable Content", and the game has a method of determining the mission file if using the addon folder.

It seems like you've got it right where you want it as well.  If you need help, don't be afraid to ask.