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.

Topics - Phobos

Pages: [1] 2 3 ... 26
General / EvolveHQ Shut Down
« on: June 16, 2017, 02:23:35 PM »
A couple weeks ago, Evolve permanently shut down their VLAN service and removed all user profile pages just like Xfire. :(

Although Evolve was the best VLAN service until it shut down, at least Tunngle is still functional. Our community shouldn't have to worry though since we now have SWBFSpy.

Except for playing SWBF1 patch 1.3 online, the Internet option doesn't work so the only way is Player Hosted servers through Tunngle


To Our Friends and Members:

Evolve Labs will be shutting down operations of Evolve HQ and Evolve Arenas, effective June 1, 2017.

“Evolve or Die”. These were words our company lived by. But sometimes there isn’t a choice. And despite our desire and best efforts to find another way forward, we’ve run out of options.

This is not the time to dissect all the reasons for how we reached this point, but there were a few major contributors:

Lack of a viable business model.
Investor funding to build viable alternatives (HQ 2.0 and Arenas).
Failed acquisition.
Stiff competition.
When we were right, we were right. When we were wrong, we were damn near right. But “almost” only counts in horseshoes and hand grenades.

There are many people to thank.

Our Team – We’ve had the privilege of having brilliant founding engineers and the opportunity to build a team of the best talent from anywhere. They poured their guts into this company. They were loyal to a person. All were tested. All gave their all. Minneapolis. San Francisco. Seattle. Minsk. You know who you are. Prost!
Our Investors – Family. Friends. You were the ones who believed in us most. Again and again. You provided us this opportunity to realize our vision of Gaming. Better. Together. Because you believed in that vision… but more importantly, you believed in us. Thank you.
And You – Our members. All 3 million of you. But especially those who were able to support us with their wallets. We shared your pain. You shared our vision. And we can honestly say, we so wanted to make it happen for you. We’re sorry we let you down.
As a side note: those of you who joined us and made a financial contribution to Evolve HQ over the last 30 days will be receiving a full refund.

We learned so much.  We hope it was worth it for you. We know it was worth trying. We hope our paths cross again. Until then…

So long, and thanks for all the fish!

Adam and OODA

I had saved only one copy of my profile page from June 2015.

Released Assets / Night of the Living Dead - Side Assets
« on: June 14, 2017, 08:10:53 PM »
Night of the Living Dead - Side Assets

NOTLD has reached 1000 downloads on ModDB.com :cheers:
There's also an additional 136 downloads currently for it on SWBFGamers.com


Since the original sides & mission probably won't be updated again, I've decided to release the source builder for it, so other modders can customize NOTLD sides or use the assets in their maps. You can modify any of these files for other mods but the original credits should be included.

Tirpider has granted permission to distribute the crowbar model, originally created by Milanbon.
It should be fine. You won't be distributing the source model (which falls under Turbosquid's Royalty Free License) so simply mentioning "Original Model by milanbon" or something like that should keep everyone out of jail.

NOTLD map is being upgraded into Hershel's Farm for The Walking Dead Mod. The most recent edition of the map is featured in TWD Battlefront v0.94

SWBF1 Modding Tutorials / Maximum AI Difficulty Tweaking for Modders
« on: April 11, 2017, 06:24:33 AM »
Maximum AI Difficulty Tweaking for Modders
This tutorial covers every currently known mission LUA and side ODF trick to improve the difficulty setting of AI in SWBF1. There are also ways to improve the AI difficulty by adding hintnodes to map LVLs, but this tutorial doesn't cover that.
For zeroeditor hintnodes tutorial, go here http://www.swbfgamers.com/index.php?topic=8424

According to all the info contained in this thread, these would be the best LUA settings to use for the strongest enemy AI possible in SWBF1, in combination with using the Hard difficulty setting ingame:
Code: [Select]
SetTeamAggressiveness(ALL, 0.0) -- player team
SetTeamAggressiveness(IMP, 1.0) -- enemy team
SetPlayerTeamDifficultyHard(-20) -- functional for SP only
SetEnemyTeamDifficultyHard (20)
SetAttackerSnipeRange(1000) -- Increases shooting range of Scout classlabel units but there is a hardcoded range limit
SetDenseEnvironment("false") -- improves the AI awareness of their surroundings and location of players
SetAllowBlindJetJumps(1) -- the AI jets fly everywhere making them harder to kill
SetMaxFlyHeight(1000) -- lets the AI and players fly really high
SetAIVehicleNotifyRadius(1000) -- allows AI to track down vehicles from across the map
SetStayInTurrets(1) -- forces AI to stay in turrets
SetMemoryPoolSize("Aimer", 999) -- allocates the maximum memory possible for AI shooting calculations

Untested Commands (might be functional)
Code: [Select]
-- SetAIDifficulty(10,10)
-- SetAIFormationRadius()   

I figured I might as well start a thread to document the various mod tweaks I've been discovering to increase the maximum difficulty of AI. Hard setting just isn't enough and I wish we had the game source to improve the AI further but we will have to get by with LUA and ODF.

I've already implemented these codes into the mission LUA which have slightly improved the AI strength.
Code: [Select]
SetTeamAggressiveness(IMP, 1.0) -- max value recognized by the game
    SetDenseEnvironment("false") -- improves the AI awareness of their surroundings and player location.
SetAllowBlindJetJumps(1) -- the AI jets like to fly everywhere making them harder to kill.

I've also maximized the limits for the range of AI shooting at players by making this modification to all laser based weapon ODFs (snipers shotguns pistols etc):
Code: [Select]
LockOnRange  = "0.0"
LockTime  = "0.0"
MinRange  = "0"
OptimalRange  = "32"
MaxRange  = "512"

And of course here is my ODF mod for letting AI shoot rocket launchers at players from the maximum distance allowed by the game:
Code: [Select]
TargetEnemy  = "1"
TargetNeutral  = "0"
TargetFriendly  = "0"

TargetPerson  = "1"
TargetAnimal  = "0"
TargetDroid  = "0"
TargetVehicle  = "1"
TargetBuilding  = "0"

MinRange  = "0"
OptimalRange  = "16"
MaxRange  = "150"

LockOnRange  = "0.0"
LockTime  = "0.0"

Of course radar can also be added to the AI, but I'm not sure if it actually helps them or is just for players
Code: [Select]
ScanningRange = "9999.0"
TransmitRange = "9999.0"

I was looking at the meta scripts and noticed one of the bonus references for making the AI have 'advanced training'. However this was not listed in the bonus types Fred posted about here http://www.swbfgamers.com/index.php?topic=6653.msg70823#msg70823
This is what I tested in my mission LUA:
Code: [Select]
ActivateBonus(IMP, "MEDICAL_SUPPLIES") -- this adds slow auto heal
ActivateBonus(IMP, "ADVANCEDTRAINING") -- how its referenced in metagame_state
ActivateBonus(IMP, "ADVANCED_TRAINING") -- test with underscore added

This is the error I got in SPTest. The game didn't recognize the bonus type so it didn't apply it.
Code: [Select]
Message Severity: 2
ActivateBonus specifies invalid bonus name: "ADVANCEDTRAINING"

Message Severity: 2
ActivateBonus specifies invalid bonus name: "ADVANCED_TRAINING"

Here is the reference from metagame_state.lua
Code: [Select]
yavin = {
MapName = "YAV", -- 3-char name for base map name
LocalizeName = "planets.yavin.name",
-- fnGetBonusText = metagame_state_fnGetBonusText_yavin,
chargemax = 1,
ShortBonusText = "planets.yavin.shortbonus",
LongBonusText = "planets.yavin.longbonus",
MapName1 = "planets.yavin.mapname1", -- localization key to first map
MapName2 = "planets.yavin.mapname2", -- localization key to second map
RotateSpeed = 0.62,
ModelScale = 0.16,
BonusType = "AdvancedTraining",
pickorder = 7, -- 1 = picked first, 2 = second, etc

Does anyone else have any other ideas for how to implement the AdvancedTraining bonus from Galactic Conquest into a regular mission LUA or any other potential tweaks for making the AI more difficult?

List of things I want to improve for the AI: (note that I play SP exclusively on Hard Difficulty now)
- Intelligence and hunting down players from any distance
- Advanced Training bonuses from GC applied to Instant Action and MP mission LUAs
- More defensive manuevers when fighting players not so many predictable movements and "path hugging"
- Increase the default cutoff range for how far AI can shoot at players (i.e. make it so a sniper AI on the other side of kamino is still going to shoot at you if you're in his line of sight)
- Enable the "special jet tricks" for players which AI are seemingly only capable of using such as: rolling midair while in a jet jump, double jetting really high above the map

Would it be possible to use some of these features from SWBF2 or hack the game memory to increase AI difficulty?

Quote from: Psych0fred
AI Difficulty

Command Line Options:

This will disable auto balancing for the entire game. Use this to pure balance your levels.

Console debugging commands:

Dumps the difficulty to the console, and also to the debug output (TTY on ps2, DrWatson for xbox):

Profile setting: MEDIUM
AutoBalance: ACTIVE
        base   lua  auto = total
Player :  10 +   0 +   0 = 10
Enemy  :  12 +   0 +   0 = 12   

This shows the current profile difficulty setting (EASY, MEDIUM, HARD).

Then it says if AutoBalance is turned on.  You can control this with the lua EnableAIAutoBalance() command.  The modes shown are:
ACTIVE - AutoBalance is enabled and currently working.
INACTIVE - Its turned on, but not currently active.  Probably because one side has infinite reinforcements.
DISABLED - not turned on.

Then it shows the difficulty setting calculation.  "Base" is the base value that it gets from the profile setting.  "Lua" is the adjustment modifier that you can set in the lua with the SetAIDifficulty() command.  "Auto" is the modifier from the auto balancer.  "Total" is the final value that it uses.

Lua Script commands:

Turn on AutoBalancing.  This will work for Conquest/Assault/CTF games.  Not campaign.   Basically if the score gets too far in one teams favor (+/- 40 conquest, 60 assault, 1 ctf) it will make the losing team better and the winning team worse until things get back to close again.

Turn off AutoBalancing.  It is on by default so you should use this for your campaign mode scripts.

SetAIDifficulty(player, enemy)    
This will set the current difficulty modifier.  The two values are for the player's team and for the enemy's team.  These are only modifiers on the current profile setting, so you don't need to set these at all if you want.  All maps default to (0,0).

SetAIDifficulty(-2, 3)
This will make the AI on the players team 2 settings easier, and the AI on the enemy team 3 settings harder.
This can be called from any point within a mission.  So if you want the bad guys to be more difficult on just one objective, call this with say (0,2) in the OnStart function, then call it again with (0,0) to reset it in the OnComplete function.

SetAIDifficulty(player, enemy, diff)    
This works just like the above, but only for a specific profile setting.  So if you want to leave medium alone, but make hard mode harder, you could do:

   SetAIDifficulty(0, 3, "hard")
The last value can be "easy", "medium", or "hard".

To make zombies smarter you can change the UnitType value in the ODF to "Trooper" or "pilot". This will make them strafe shots at close range and they are harder to shoot in the head with high move speeds.

To make zombies more stupid and charge at the player without trying to dodge shots change the UnitType to "assault". When combined with slower move speeds this resembles the classic zombie more but they are much easier to kill. I haven't tested the other unit types such as "support" yet.

This works for any AI not just zombies btw and is most noticeable on Hard difficulty.

From http://www.swbfgamers.com/index.php?topic=4594

I grepped through the odf's for BF1 and 2 for "UnitType" and made this list:

//possible unit types:
//"assault" or "Assault"
//"scout" or "Scout"
//"trooper" or "Trooper"
UnitType = "assault"

I don't know if case affects it or not, so I included the variations.
They certainly affect the behavior of the unit, but I imagine the SetTeamAggressiveness setting will have more of an impact on how reckless they are.

I grepped through the lua files for SetTeamAggressiveness.
The lowest value I saw was 0.7
The Highest was 1.0  (most common one as well.)

UnitType Information
- Assault classlabel will tell AI to place landmines (if they have that weapon) on the Mine hintnodes for maps placed in ZeroEditor. It also makes the AI more 'stupid' and they will not strafe sideways when being aimed at by enemies.
- Pilot is like Trooper, the AI will be most aggressive and use tactics such as strafing. In addition this unit type can also heal vehicles automatically while driving. They also heal players and repair turrets/vehicles
- Repair has not been tested yet.
- Scout is almost as aggressive as Pilot/Trooper, but will play more defensively and retreat sometimes more often. They utilize Sniper hintnodes placed in ZE and will sometimes go prone in certain areas. They also strafe to dodge enemy shots.
- Support has not been tested yet.
- Trooper is the most aggressive unit type which will use strafing tactics to dodge enemy shots.

Also to maximize zombie aggression, use these LUA
SetTeamAggressiveness(IMP, 1.0) -- zombie faction

I have already set all of them to assault which is what was in the Luke .odf but they still run away from grenades and still act too nonchalant. Maybe I can increase their speed slightly to make it harder.. Still, I wish there was a way to take away their "grenade sense".
this would be nice, they retreat from melee sometimes too.

Code: [Select]
SetEnemyTeamDifficultyHard (6)
It's possible adding this to a mission LUA will increase the difficulty of enemy faction defined by the missionlist.

Quote from: John Northan - Lead Programmer
Welcome to my developer diary. My name is John Northan and I'm a programmer on Star Wars Battlefront at Pandemic Studios, specializing in game Artificial Intelligence. My plan is to give you an insight into several challenging technical issues that we've worked on whilst developing Battlefront: creating a massive battlefield sensation, encouraging emergent AI environment interaction, and developing distinct soldier behaviors, such as assault, scout and repair.
One of the great sensations to come from watching the Star Wars movies are the massive battle sequences. We want the player to feel like they are in the midst of those battles, such as down on the surface of Hoth running amongst giant AT-ATs or taking a defensive position in the snow trenches. To achieve this, we need to simulate great numbers of soldiers, ground-based vehicles, and flyers. In Battlefront's single player experience, the majority of these entities need to be controlled by AI. The AI for each entity is calculated at several different layers. At the highest level, the strategic AI, examples of the types of critical decisions that need to be made are: which command post to attack, which enemy to engage, which weapon is most appropriate, and whether to interrupt a current action because a thrown grenade has just been spotted. At the lower levels, the controller AI, examples of the types of immediate decisions that need to be made are: how fast and in what direction to move, where to aim a weapon in order to hit a moving target, and whether to alter course in order to avoid a collision.
The technical difficulty in juggling all this strategic and control AI for a large number of soldiers and vehicles is that it must all be achieved with low CPU usage. For example, in Battlefront, we allow the AI about five to ten percent of CPU time. One of our solutions was to realize that high-level strategic decisions could be made much less frequently than the lower level controls. Decisions, therefore, are made at differing time intervals, dependent upon their urgency. For example, when a soldier is running through a battlefield, he needs only to evaluate which command post to attack every few seconds, whereas he needs to make weapon aiming decisions continuously.
One of the leading-edge AI techniques in use in games at the moment is for characters to react to the environment intelligently. Examples of this are soldiers in combat seeking cover behind barriers or snipers hiding out on rooftops. This emergent behavior is achieved in Battlefront by the placement of hint nodes within the world. We have a variety of hint nodes that our Level Designers can populate the word with, such as "cover" nodes to designate strategic positions to fire on the enemy from, "snipe" hints for concealed, long-range firing positions, and "minefield" hints for areas where mines could be laid. It is the emergent use of these hints that can give an AI-controlled soldier the appearance of intelligent environment use.
We have put much time during the development of Battlefront into distinct soldier behaviors. When running through a battlefield, it is possible to notice each behavior: there will be trooper soldiers directly engaging the enemy, sniper soldiers staying hidden at the periphery of the battle, assault soldiers attempting to outflank and destroy enemy vehicles, and repair soldiers busy healing the wounded. The trooper soldiers have the most variety of behavior. Upon spotting an enemy, they will select a method of attack, based upon factors such as weapon availability and enemy mobility. For example, a trooper soldier armed with just a pistol will try to get up close to a target, dodging and weaving, whereas a trooper armed with a long-range rifle will go prone, reducing the potential for shot error. Troopers will use cover hints to use natural environmental barriers to hide from the enemy. If a cover position is compromised the soldier will run for another barrier from which to take cover.
Sniper soldiers tend to avoid direct combat. They prefer to look for strategic snipe positions, from which they can pick off enemy soldiers with a precise, long-range rifle. If their snipe position is discovered, they will pull out a pistol and make a fighting retreat. Assault soldiers seek out enemy vehicles. At long range, they will go prone and fire a low-error shot at their target. If the vehicle approaches they will attempt to outflank, heading to the backside of the vehicle, where it tends to be most vulnerable. Repair soldiers will follow other soldiers into battle, re-supplying them with ammo, and healing them if injured. Of course, if fired upon, they will interrupt their healing behavior and immediately engage in combat.
That's the quick and comprehensive look into the world of Infantry-based AI! We've also developed many other behaviors and stylized nodes to handle such things as the many, many different types of vehicles or emplacements that can be used! It would be silly to describe all of our secrets, though, wouldn't it!
Keep a look out for these soldier behaviors and more whilst you're mowing them all down in the Battlefront!

For custom single player maps is there a way to completely disable players from changing the difficulty settings (easy medium hard) and define them within the mission LUA? For example if I put this in the mission LUA
Code: [Select]
ScriptCB_SetDifficulty(3)Would this force the difficulty to hard and override whatever the player's default difficulty setting is?
Yes, I think that works.  But it goes to something like 12.
These are LUA commands for historical maps.  Some commands are duplicated so that you can see the range of values that it may take.  This is currently a work in progress.
   SetPlayerTeamDifficultyEasy (1)
     SetEnemyTeamDifficultyEasy (4)
     SetPlayerTeamDifficultyMedium (2)
     SetEnemyTeamDifficultyMedium (3)
        SetPlayerTeamDifficultyMedium (2)
        SetEnemyTeamDifficultyMedium (-4)     
        SetPlayerTeamDifficultyEasy (14)
        SetEnemyTeamDifficultyEasy (-3)
        SetPlayerTeamDifficultyMedium (-1)
        SetEnemyTeamDifficultyMedium (6)
--     SetPlayerTeamDifficultyHard (-10)
--     SetEnemyTeamDifficultyHard (12)
     SetPlayerTeamDifficultyHard (0)
        SetEnemyTeamDifficultyHard (3)

Code: Lua
  1. --ScriptCB_GetDifficulty()
  2. -- returns: number representing the current difficulty.
  3. --          retrieved from the current profile.
  4. --          [1, 2, or 3](easy, medium, hard)
  5. -- found in: [line numbers in brackets]
  6. --           ifs_difficulty.lua [35]
  7. --           ifs_difficulty_demo.lua [40]
  8. --           ifs_instant_top.lua [19]
  9. --           ifs_opt_general.lua [58][60][187][218][249]
  10. --           ifs_sp_briefing.lua [765]

Code: Lua
  1. --ScriptCB_SetAIDifficulty(n1, n2)
  2. -- parameters: n1 and n2 should be numbers.
  3. --             they have something to do with the number of availiable maps in
  4. --             galactic conquest.
  5. -- found in: [line numbers in brackets]
  6. --           ifs_meta_battle.lua [32][34][131][133]
  7. -- notes: I believe it sets some metric for the GC AI and has nothing to do with
  8. --        the in-game AI.

Code: Lua
  1. --ScriptCB_SetDifficulty(n)
  2. -- parameters: n should be a number
  3. --          [1, 2, or 3](easy, medium, hard)
  4. -- found in: [line numbers in brackets]
  5. --           ifs_difficulty.lua [60]
  6. --           ifs_difficulty_demo.lua [48]
  7. --           ifs_instant_top.lua [19]
  8. --           ifs_opt_general.lua [187][218][249]
  9. --           ifs_sp_briefing.lua [765]
  10. -- notes: Pretty sure it sets the difficulty in the profile, so if a map is
  11. --        already initialized, this won't have an effect on the current map.

Code: Lua
  1. --SetEnemyTeamDifficulty(n)
  2. --SetPlayerTeamDifficulty(n)
  3. -- parameters: n should be a number
  4. -- notes: the only example is commented out in kam1c.lua with 11 as it's number. Most likely a depreciated feature.

Code: Lua
  1. --SetEnemyTeamDifficultyEasy(n)
  2. --SetEnemyTeamDifficultyMedium(n)
  3. --SetEnemyTeamDifficultyHard(n)
  4. --SetPlayerTeamDifficultyEasy(n)
  5. --SetPlayerTeamDifficultyMedium(n)
  6. --SetPlayerTeamDifficultyHard(n)
  7. -- parameters: n should be a number
  8. -- found in: all the hustorical mission luas.
  9. -- notes: they seem to accept a wider range of values than SetDifficulty.
  10.           And all appear in the same files. Don't know how to use them.

These are psych0fred's LUA notes, not sure which of it is for BF2 only.
Quote from: psych0fred
I've added a setting to the lua mission scripts that tells the AI the mission is urban.  This allows the AI to change some combat behaviors to be more suitable to an urban environment (for example, ATST will not move as much around during combat, since in a tight urban setting they will collide with walls too much).
I've added the setting to all current lua files, so you will only need to add it to any new lua mission files you create:
I've renamed the script function, "SetUrbanEnvironment" to "SetDenseEnvironment" since I realized with Endor that I wanted the AI vehicles to behave in the same way in forested environments as in city environments.  The new function name generalizes the environment type better.  I've updated all the lua scripts with this new function name.

SetAIDifficulty(player, enemy)
          This will set the current difficulty modifier.
          The two values are for the player's team and for the enemy's team.
          These are only modifiers on the current profile setting, so you don't need to set these at all if you want.
          All maps default to (0,0).
      SetAIDifficulty(-2, 3)
          This will make the AI on the players team 2 settings easier, and the AI on the enemy team 3 settings harder.
          This can be called from any point within a mission.
          So if you want the bad guys to be more difficult on just one objective, call this with say (0,2) in the OnStart function, then call it
          again with (0,0) to reset it in the OnComplete function.
      SetAIDifficulty(player, enemy, diff)
          This works just like the above, but only for a specific profile setting.
          So if you want to leave medium alone, but make hard mode harder, you could do:
      SetAIDifficulty(0, 3, "hard")
          The last value can be "easy", "medium", or "hard".

I've added a couple of new lua commands:
SetPlayerTeamDifficulty( value )
SetEnemyTeamDifficulty( value )
where value can be between 1 (dumbest) and 20 (smartest)

I've added support for the Historical campaign lua commands:

Note that Lua DOES NOT accept the "+" sign, so do not do: SetPlayerTeamDifficultyEasy(+5)

Instead, do: SetPlayerTeamDifficultyEasy(5)

Of course, you can use the "-" sign: SetPlayerTeamDifficultyEasy(-5)

- Not tested, my theory is that it may increase or maximize (in terms of weapon ODF range) AI sniper bot shooting range.

- Set to 0 by default, set to 1 makes AI jets randomly jump around as if jet nodes were everywhere on the map. I test this lines aswell.The first one works with in combination with defence hint node. You can place the hint node in zeroeditor.When a sniper class soldier go to that hint node he will ahve increased range of fire.

This is taken from platforms LUA and can be seen in various other stock maps with flyer vehicles. This is used for AIs.I think 64 is default.AIs in 64 range away from any vehicle will return and will try to enter the vehicle.If the Ai is too far away for example (65) he will not come back for the vehicle.Its not good to set this value too high because bots will return from far away just to enter a vehicle.
Nice discovery. So the SetDefenderSnipeRange code allows sniper AI (UnitType=Scout) to shoot players from further distance than default limit for other units? I'm wondering if you made a giant sniper hintnode that covered the entire map, and set the LUA line to 9999, if AI could snipe players from across the map. The default cutoff range for stock sniper is 2000 velocity * 0.15 lifespan so would want to increase that for testing. If this trick worked you could in theory add unlimited shot range to all AI units :o

Released Assets / Phobos' Gordon Freeman
« on: February 24, 2017, 12:51:30 AM »
Phobos' Gordon Freeman

This is my updated reskin and kitbash of the stock rebel pilot. :cheers:

Star Wars Battlefront / Warning to all SWBF1 server crashers
« on: February 12, 2017, 01:00:23 PM »
The [FC] servers have been crashed several times recently, as a result more IPs have been banned. I have recorded all the evidence and packet captures of who it was and when it happened to share with other SWBFSpy server admins. We find it quite disrespectful that there are still crashers going around causing problems. It's happened too many times recently to call a "coincidence". The batch and other server files are confirmed to be stable and haven't crashed for several months. These are acts of direct hostility towards our server, and we have proof of UDP spam and other forms of attacks being used.

I won't post the IP addresses which have been banned here, but I will list this information:
- January 20th the TWD server was crashed by a player from Austria who is now banned
- January 31st the [FC]Battlefront server was crashed by a player from Denver Colorado who is now banned
- February 11th there was a vigorous attempt to crash the TWD server (although it wasn't successful) by a player from Germany who is now banned
- February 11th the [FC]Battlefront server was crashed by a player from Virginia who is now banned
- February 12th (shortly after midnight) the SWBF1Spy PS2 server was crashed by a player from Alabama who is now banned

The [FC] servers are continually being attacked, and I will continue to issue out permanent bans every time it occurs. Consider this a warning to anyone who thinks they can crash our servers and get away with it: You will get caught, and you will get permanently banned, so don't ruin the fun for everyone and lose the privilege of playing in our servers.

If anyone would like the IP subnets of these troublemakers to ban from their own servers as well, contact me or Anyder for the info. I'll update this thread if any more attacks happen again in the future. Thanks to everyone who is kind enough NOT to crash our servers -- but unfortunately a small fraction of these players could get accidentally banned, due to having similar IP addresses as the server crashers who have had their subnets banned.

Spoiler (click to show/hide)

General / IMDb Forums Shutting Down
« on: February 08, 2017, 07:58:05 PM »

IMDb Message Boards Announcement

IMDb is the world's most popular and authoritative source for movie, TV and celebrity content. As part of our ongoing effort to continually evaluate and enhance the customer experience on IMDb, we have decided to disable IMDb's message boards on February 20, 2017. This includes the Private Message system. After in-depth discussion and examination, we have concluded that IMDb's message boards are no longer providing a positive, useful experience for the vast majority of our more than 250 million monthly users worldwide. The decision to retire a long-standing feature was made only after careful consideration and was based on data and traffic.

Increasingly, IMDb customers have migrated to IMDb's social media accounts as the primary place they choose to post comments and communicate with IMDb's editors and one another. IMDb's Facebook page (https://www.facebook.com/imdb) and official Twitter account (https://twitter.com/imdb) have an audience of more than 10 million engaged fans. IMDb also maintains official accounts on Snapchat (https://www.snapchat.com/add/imdblive), Pinterest (https://www.pinterest.com/imdbofficial/), YouTube (https://www.youtube.com/imdb), and Tumblr (http://imdb.tumblr.com/).

Because IMDb's message boards continue to be utilized by a small but passionate community of IMDb users, we announced our decision to disable our message boards on February 3, 2017 but will leave them open for two additional weeks so that users will have ample time to archive any message board content they'd like to keep for personal use. During this two-week transition period, which concludes on February 19, 2017, IMDb message board users can exchange contact information with any other board users they would like to remain in communication with (since once we shut down the IMDb message boards, users will no longer be able to send personal messages to one another). We regret any disappointment or frustration IMDb message board users may experience as a result of this decision.

IMDb is passionately committed to providing innovative ways for our hundreds of millions of users to engage and communicate with one another. We will continue to enhance our current offerings and launch new features in 2017 and beyond that will help our customers communicate and express themselves in meaningful ways while leveraging emerging technologies and opportunities.

SWBF1 Modding Tutorials / Vehicle ODF tutorial by psych0fred
« on: February 06, 2017, 09:15:22 PM »
Commented AAT.odf vehicle tutorial by psych0fred
ClassLabel          = "hover" // Defines the class label for the game engine to expose properties
GeometryName        = "cis_hover_aat.msh"   // Defines the mesh for Zeroeditor when placed as an object


GeometryName        = "cis_hover_aat"   // Sets name of mesh file to use for vehicle

Explosion           = "cis_hover_aat_exp"   // Sets name of odf file to call when vehicle dies

// Some vehicles have a slow death, the ATAT for example has a long death animation attached to it
// -- the ATAT reaches critical health, crumbles to it's knees, then finally explodes; flyers can die
// -- but go spinning off before exploding...
//--in which case the ExplosionCritical and ExplosionDestruct are used

ExplosionCritical   = "cis_hover_aat_exp"   // Sets name of odf file to call when vehicle reaches critical health
ExplosionDestruct   = "cis_hover_aat_exp"   // Sets name of odf file to call when vehicle finally explodes

VehicleType         = "light"   // Defines the vehicle type for ???????
AISizeType          = "MEDIUM"  // Defines the size of the AI for planning graphs

MapTexture          = "aat_icon"    // Defines the tga file used on map for vehicle
MapScale            = 1.5   // Defines the scale of the icon on the map
HealthTexture       = "HUD_cis_aat_icon"    // Defines the tga used for the vehicle health icon

WaterEffect         = "waterwake_lg"    // Defines the common particle effect for when vehicle goes through water

FLYERSECTION        = "BODY"    // Defines the primary section of the vehicle occupied by pilot
VehiclePosition     = "common.vehiclepositions.pilot"   // Defines the pilot position for localization
FirstPerson         = "cishq\cishq;cis_1st_cockpit_AAT" // Defines the path to the fpm folder/lvl/sub-lvl
FirstPersonFOV      = "52" // Sets the first person field of view
CockpitTension      = 22    // Sets the tension of the cocpit camera

CollisionScale      = 4 // Sets the damage resulting from collision
CollisionThreshold  = 5 // Sets the threshold of impact before damage occuers
MaxHealth           = 6600.0    // Sets teh vehicle's max health
HealthType          = "vehicle" // Sets the health type for a vehicle, used for ?????????
//HitLocation       = "p_crithit 0"

SetAltitude         = 0.5   // Sets the default hover altitude
GravityScale        = 4.0   // Sets the mass of the vehicle
LiftSpring          = 4.0   // Sets the spring in the hover
LiftDamp            = 3.0   // Sets the cushion of the spring on subsequent bounces

Acceleration        = 5.25  // Sets the rate of acceleration m/s
Deceleration        = 7.0   // Sets the rate of decelleration m/s
Traction            = 20.0 // Sets the percent to decrease acceleration rate when starting from zero
ForwardSpeed        = 12.0 // Sets the maxspeed m/s
ReverseSpeed        = 10.0  // Sets the max reverse speed m/s
StrafeSpeed         = 4.5   // Sets the max strafe speed m/s

// The following sections tweak the bounce
AddSpringBody       = "-1.6 1.9 1.95 2.5"
BodySpringLength    = 0.3
AddSpringBody       = "1.6 1.9 1.95 2.5"
BodySpringLength    = 0.3

AddSpringBody       = "0.0 2.15 -1.6 3.5"
BodySpringLength    = 0.8
BodyOmegaXSpringFactor = 2

VelocitySpring      = 5
VelocityDamp        = 2.5
OmegaXSpring        = 1.0
OmegaXDamp          = 3.0
OmegaZSpring        = 4.0
OmegaZDamp          = 1.5

SpinRate            = 1.7   // Sets the rate of turn for the vehicle is turning but not moving
TurnRate            = 1.7   // Sets the rate of turn for the vehicle when turning while moving
TurnFilter          = 5.0   // Sets a tension in the rate of turn to make it ramp up
PitchRate           = 0.5   // Sets the rate of pitching the vehicle
PitchFilter         = 1.0   // Sets the rate ramping up the pitch when starting a tilt
PitchDamp           = 1.0   // Sets the rate slowing down the vehicle when stopping a tilt

//SpinRate            = 2.7
//TurnRate            = 1.7
//TurnFilter          = 5.0
//PitchRate           = 2.5
//PitchFilter         = 1.0
//PitchDamp           = 1.0

StrafeRollAngle     = 0.01  // Angle the vehicle rolls when strafing
ThrustPitchAngle    = 0.0   // Picth of the vehicle caused by thrusting forward
BankAngle           = -0.01 // Angle of the vehicle when banking
BankFilter          = 3     //low is slow - How quickly the bank returns to level
LevelSpring         = 2.0   //low is slow - the force the restores level
LevelDamp           = 1.0   //low is slow - the force that reduces the momentum of the rotation

PCPitchRate         = "15.0" // may be obsolete, otherwise these settings are used on PC
PCSpinRate          = "15.0"// may be obsolete, otherwise these settings are used on PC   
PCTurnRate          = "20.0"// may be obsolete, otherwise these settings are used on PC

//Camera settings for vehicle position
// Think of camera as fixed on one end of long stick balanced on a cone
//-- on one end is camera, other end is focal point, cone at center can be shifted
//-- camera is eyepoint; TrackOffset is focal point; Trackcenter is cone position; tilt value is tilt on pole
EyePointOffset      = "0.0 2.5 -2.0"  // Camera position from vehicle origin x,y,z
TrackCenter         = "0.0 5.0 0.0"   // Camera tilt axis from vehicle origin x,y,z
TrackOffset         = "0.0 0.0 10.0"  // Camera Focal Point from vehicle origin x,y,z   
TiltValue           = "5.0"           // How much camera can tilt
PitchLimits         = "-30 20" // How far camera swings when pitching in degrees
YawLimits           = "-90 90"  // How far camera swings when tilting in degrees

// Each body section or turret section can be occupied by a unit
// -- if a body or turret section has more than one weapon, they are defined by WEAPONSECTION headers
// -- when a section has more than one weapon, section 1 is the primary fire and section 2 the secondary fire

WeaponName          = "cis_weap_hover_aat_cannon" // Odf name of weapon
WeaponAmmo          = 0 // Amount of ammo or clips in weapon 0 is infinite

AimerNodeName       = "side_gun_1"  // Hardpoint name in mesh that acts as camera point for aimer
AimerPitchLimits    = "-30.0 90.0"  // Sets pitch movement limits on aimer in degrees
AimerYawLimits      = "-30.0 10.0"  // Sets yaw movement limits on aimer in degrees
BarrelNodeName      = "recoil_1"    // Sets name of object in mesh to use as gun barrel to animate recoil
BarrelRecoil        = 0.25          // Sets amount of recoil to apply to object defined as barrel
FirePointName       = "hp_gun_2"    // Sets the name of the hardpoint in the mesh where the shot comes from

NextAimer           = "-"  // Header for other barrels weapons with multiple barrels, causing alternating shots

AimerNodeName       = "side_gun_2"
AimerPitchLimits    = "-30.0 90.0"
AimerYawLimits      = "-10.0 30.0"
BarrelNodeName      = "recoil_2"
BarrelRecoil        = 0.25
FirePointName       = "hp_gun_1"

WEAPONSECTION       = 2     // Weaponsection 2 defines weapons fired using the secondary fire button
WeaponName          = "cis_weap_hover_aat_missile"
WeaponAmmo          = "9"

// The AAT has six missile tubes, three on each side. Each is separated with a nextaimer line
//--causing the shots to fire from teh barrels one by one rather than from all six at once
AimerPitchLimits    = "-5 90"
AimerYawLimits      = "-20.0 20.0"
AimerNodeName       = "hp_missleR_1"

NextAimer           = "-"

AimerPitchLimits    = "-5 90"
AimerYawLimits      = "-20.0 20.0"
AimerNodeName       = "hp_missleL_2"

NextAimer           = "-"

AimerPitchLimits    = "-5 90"
AimerYawLimits      = "-20.0 20.0"
AimerNodeName       = "hp_missleR_2"

NextAimer           = "-"

AimerPitchLimits    = "-5 90"
AimerYawLimits      = "-20.0 20.0"
AimerNodeName       = "hp_missleL_3"

NextAimer           = "-"

AimerPitchLimits    = "-5 90"
AimerYawLimits      = "-20.0 20.0"
AimerNodeName       = "hp_missleR_3"

NextAimer           = "-"

AimerPitchLimits    = "-5 90"
AimerYawLimits      = "-20.0 20.0"
AimerNodeName       = "hp_missleL_1"

// Turret1 is the turret on the top of the AAT
FLYERSECTION        = "TURRET1" // Turret1 is the secondary positon a unit can man

FirstPerson         = "cis\cissccam;cis_1st_cockpit_securitycam"
VehiclePosition     = "common.vehiclepositions.gunner"
TurretNodeName      = "Gun_Body"
PitchLimits         = "-40.0 20.0"
YawLimits           = "-180.0 180.0"
PitchTurnFactor     = 0.0

PCPitchRate         = "15.0"
PCTurnRate          = "20.0"

TurnRate            = 1.5
TurnFilter          = 5.0
PitchRate           = 0.5
PitchFilter         = 1.0
PitchDamp           = 1.0

//PitchRate         = 0.8
//PitchFilter       = 2.75
//TurnRate          = 1.3
//TurnFilter        = 2.75

AimerNodeName       = "Main_Gun"
AimerPitchLimits    = "-30.0 90.0"
AimerYawLimits      = "0.0 0.0"

BarrelNodeName      = "recoil_3"
BarrelRecoil        = 0.75
FirePointName       = "hp_cannon_1"

EyePointOffset      = "0.0 2.0 -1.75"
TrackCenter         = "0.0 1.0 -2.0"
TrackOffset         = "0.0 0.0 3.0"
TiltValue           = "10.0"

// This section sets up the sounds triggered when manning the turret as well as when it moves
TurretYawSound         = "turret_whir_yaw_lp"
TurretYawSoundPitch    = "0.7"
TurretPitchSound       = "turret_whir_pitch_lp"
TurretPitchSoundPitch  = "0.7"
TurretAmbientSound     = ""
TurretActivateSound    = "vehicle_equip"
TurretDeactivateSound  = "vehicle_equip"
TurretStartSound       = ""
TurretStopSound        = ""

WeaponName              = "cis_weap_hover_aat_launcher"
WeaponAmmo              = 0

// This section define the collision geometry within the mesh to use when colliding with what kind of object
VehicleCollision        = "p_vehiclesphere"
SoldierCollision        = "CollisionMesh"
//SoldierCollision      = "p_sidegun1"
//SoldierCollision      = "p_sidegun2"
SoldierCollision        = "p_barrel"
SoldierCollision        = "p_turret"

OrdnanceCollision       = "CollisionMesh"
OrdnanceCollision       = "p_sidegun1"
OrdnanceCollision       = "p_sidegun2"
OrdnanceCollision       = "p_barrel"
OrdnanceCollision       = "p_turret"

// Chunks are the peices resulting from the vehicle's explosion
CHUNKSECTION            = "CHUNK1" // Defines the chunk
ChunkGeometryName       = "cis_hover_att_Chunk1"    // Defines the mesh file to use for the chunk
ChunkNodeName           = ""    // Defines the hardpoint in the mesh from which the chunk originates
ChunkTerrainCollisions  = "2"   // Defines the number of time the chunk bounces
ChunkTerrainEffect      = "dirtspray"   // Defines the particle effect attached to each bounce
ChunkPhysics            = "FULL"        // Defines the chunk behavior/mass
ChunkOmega              = "1.0 2.0 1.0" // ?? Defines chunk spin???
ChunkBounciness         = 0.35  // Defines rate of upward bounce
ChunkStickiness         = 0.45  // Defines how fast chunk accelerate in bounce
ChunkSpeed              = "15.0"  // Defines speed of moving chunk
ChunkUpFactor           = "25.00"   // Defines the upward speed of spawned chunk
ChunkTrailEffect        = "mediumsmoketrail"    // Defines the particle effect attached to chunk

// The next two lines define sounds to be triggered by chunks
ChunkInitialCollisionSound = "com_veh_collision_lg" //Played each time the chunk collides with something.
ChunkScrapeCollisionSound  = "" // Played as the chunk slides along another object.

CHUNKSECTION            = "CHUNK2"
ChunkGeometryName       = "cis_hover_att_Chunk2"
ChunkNodeName           = ""
ChunkTerrainCollisions  = "4"
ChunkTerrainEffect      = "dirtspray"
ChunkPhysics            = "FULL"
ChunkOmega              = "2.0 2.5 2.0"
ChunkBounciness         = 0.45
ChunkStickiness         = 0.25
ChunkSpeed              = "10.0"
ChunkUpFactor           = "0.00"
ChunkTrailEffect        = "mediumsmoketrail"

ChunkInitialCollisionSound = "com_veh_collision_lg" //Played each time the chunk collides with something.
ChunkScrapeCollisionSound  = "" // Played as the chunk slides along another object.

CHUNKSECTION            = "CHUNK3"
ChunkGeometryName       = "cis_hover_att_Chunk3"
ChunkNodeName           = ""
ChunkTerrainCollisions  = "3"
ChunkTerrainEffect      = "dirtspray"
ChunkTrailEffect        = "mediumsmoketrail"
ChunkPhysics            = "FULL"
ChunkOmega              = "2.0 1.0 2.0"
ChunkSpeed              = "12.0"

ChunkInitialCollisionSound = "com_veh_collision_lg" //Played each time the chunk collides with something.
ChunkScrapeCollisionSound  = "" // Played as the chunk slides along another object.

CHUNKSECTION            = "CHUNK4"
ChunkGeometryName       = "cis_hover_att_Chunk4"
ChunkNodeName           = ""
ChunkTerrainCollisions  = "0"
ChunkTerrainEffect      = "dirtspray"
ChunkTrailEffect        = "mediumsmoketrail"
ChunkPhysics            = "LEAF"
ChunkOmega              = "0.2 0.0 0.2"
ChunkSpeed              = "2.0"
ChunkSmokeEffect        = "smokeplume"
ChunkSmokeNodeName      = "hp_smoke"

ChunkInitialCollisionSound = "com_veh_collision_lg" //Played each time the chunk collides with something.
ChunkScrapeCollisionSound  = "" // Played as the chunk slides along another object.

// The next section defines damage particle effects

DamageStartPercent  = 70.0              // Health percentage where damage effect is turned on
DamageStopPercent   = 20.0              // Health percentage where damage effect is turned off
DamageEffect        = "vehiclespark"    // Particle effect to be spawned/turned on
DamageAttachPoint   = "hp_damage_2"     // Hardpoint in mesh where effect is attached
DamageEffectSound   = ""                // Sound that can be trigged at start of damage state
                                        // --looping sounds will stop when damage state changes
                                        // --sounds can also be attached to spawned particle effect

DamageStartPercent  = 70.0
DamageStopPercent   = 20.0
DamageEffect        = "vehiclespark"
DamageAttachPoint   = "hp_damage_4"

DamageStartPercent  = 60.0
DamageStopPercent   = 20.0
DamageEffect        = "vehiclespark"
DamageAttachPoint   = "hp_damage_3"

DamageStartPercent  = 50.0
DamageStopPercent   = 0.0
DamageEffect        = "vehiclesmoke"
DamageAttachPoint   = "hp_damage_2"

DamageStartPercent  = 19.0
DamageStopPercent   = 0.0
DamageEffect        = "vehicleflame"
DamageAttachPoint   = "hp_damage_2"

DamageStartPercent  = 30.0
DamageStopPercent   = 0.0
DamageEffect        = "vehiclesmoke"
DamageAttachPoint   = "hp_damage_1"

DamageStartPercent  = 10.0
DamageStopPercent   = 0.0
DamageEffect        = "vehicleflame"
DamageAttachPoint   = "hp_damage_3"
DamageEffectSound   = "cis_alert_loop"

EngineSound             = "cis_hover_aat_engine_parameterized" // Name of soundproperty to be used as looping engine
HurtSound               = "cis_hover_aat_hurt"    // Name of soundproperty to be triggered when vehicle takes damage
DeathSound              = "imp_weap_ord_exp_lg" // Name of soundproperty to be triggered when vehicle dies
TurnOnSound             = "cis_hover_aat_turn_on" // Name of soundproperty triggered when unit enters vehicle
TurningOffSound         = ""        // Name of soundproperty triggered when unit leaves vehicle
TurnOffSound            = "cis_hover_aat_turn_off" // Name of soundproperty triggered when vehile turns off
TurnOffTime             = "1.0" // Time after unit leaves vehicle before vehicle turns off
Music                   = ""    // Default music played when unit enters vehicle
RepMusic                = ""    // Music played when rep unit enters vehicle
CISMusic                = ""    // Music played when cis unit enters vehicle
ALLMusic                = ""    // Music played when all unit enters vehicle
IMPMusic                = ""    // Music played when imp unit enters vehicle
MusicSpeed              = ".25" // Speed vehicle must reach before music is triggered
MusicDelay              = "3.0" // Delay when speed reached before music is played
GroundedSound           = ""    // May be obsolete -- soundtriggered by hover bouncing against terrain
GroundedHeight          = ""    // May be obsolete -- height of vehicle that triggers groundedsound
BoostSound              = ""    // Soundproperty, speed threshold (%), going over or under (1 or 0)
FoleyFXGroup            = "metal_foley" // Defines the sound foley class to play for footsteps on object
VehicleCollisionSound   ="com_veh_collision_lg" // Name of soundproperty to trigger when vehicle collides with objects

Released Assets / BF1 Stock Campaign VO Stream WAVs
« on: December 28, 2016, 01:21:05 PM »
BF1 Stock Campaign VO Stream WAVs


BF1 Stock Campaign VO Stream WAVs ripped from the stock shell mission briefings includes a zombie briefing by Unit 33.

SWBF1 Modding / Dispenser ODF - RefillFromItem Property
« on: April 04, 2016, 02:41:20 AM »
I found a way of making a weapon not be able to refill its ammo from a recharge droid or ammo pack. That way ensures that you can only have 3 EMP mines at a time and it is also the reason that you can't refill on Health and ammo packs from a recharge droid
put this line in the weapon odf, not the ord odf or exp odf

RefillFromItem      = 0
I just tested this on a custom vehicle dispenser ODF, but it still refills from dropped ammo packs. This is confusing, it should not supply ammo since the same setting prevents stock pilot dispensers from refilling by ammo packs.

Incorrect. It won't stop you from refilling at an ammo droid but it will stop you from refilling by picking up ammo packs. In any case, I won't use this line in the ODF of the EMP mine.
In the case of TWD mod I want to be able dispense the vehicles such as the motorcycle only once per character life. So I used the ammo bot patcher I made to remove all the ammo bots from map. The trouble is "RefillFromItem = 0" seems to be ignored, when I pick up an ammo pack the dispenser refills anyway.

Here is my ODF
Code: [Select]
ClassLabel = "dispenser"

GeometryName = ""

RoundsPerClip = "1"
ShotDelay = "0.5"
ReloadTime = "9999.0"
IconTexture          = "HUD_timebomb_icon"
TriggerAll = "1"
AnimationBank = "gam" // "grenade"
RefillFromItem = 0
FireAnim                = "2"
TrackingSound        = ""

ModeTexture = "HUD_weap_mine"
//ModeTextureColor = "42 235 42 100"
ReticuleTexture = "reticule_00"
OrdnanceName = "twd_hover_motorcycle"
ShotDelay = "1.0"
MaxItems = "1.0"
AutoAimSize = "1.0"
MinStrength = "2.0"
MaxStrength = "2.0"

FireSound           = "com_weap_throw_fire"
FireEmptySound      = "com_weap_inf_ammo_empty"
FireLoopSound       = ""
ReloadSound         = "all_weap_inf_equip_med"
ChargeSound         = ""
ChargeSoundPitch    = ""
ChangeModeSound     = "all_weap_inf_equip_med"
WeaponChangeSound   = "all_weap_inf_equip_med"
OverheatSound       = ""
OverheatSoundPitch  = ""
OverheatStopSound   = ""
ClankLeftWalkSound  = ""
ClankRightWalkSound = ""
ClankLeftRunSound   = ""
ClankRightRunSound  = ""
JumpSound           = "all_weap_inf_pistol_mvt_jump"
LandSound           = "all_weap_inf_pistol_mvt_land"
RollSound           = "all_weap_inf_pistol_mvt_roll"
ProneSound          = "all_weap_inf_pistol_mvt_squat"
SquatSound          = "all_weap_inf_pistol_mvt_lie"
StandSound          = "all_weap_inf_pistol_mvt_getup"

SWBF1 Modding / ZeroEditor Crashing on Map Load [solved]
« on: February 29, 2016, 10:03:29 PM »
I'm improving my Cloud City Triton skin but when I try to load the world in ZeroEditor, it crashes on Loading bespin2_Buildings.lyr...

Code: [Select]
Problem signature:
  Problem Event Name: BEX
  Application Name: zeroeditor.exe
  Application Version:
  Application Timestamp: 41e43687
  Fault Module Name: StackHash_e98d
  Fault Module Version:
  Fault Module Timestamp: 00000000
  Exception Offset: 3e9380da
  Exception Code: c0000005
  Exception Data: 00000008
  OS Version: 6.1.7601.
  Locale ID: 1033
  Additional Information 1: e98d
  Additional Information 2: e98dfca8bcf81bc1740adb135579ad53
  Additional Information 3: 6eab
  Additional Information 4: 6eabdd9e0dc94904be3b39a1c0583635

Read our privacy statement online:

If the online privacy statement is not available, please read our privacy statement offline:

Not sure why it's crashing since it compiles and runs in game fine, but I suspect it could be due to hex editing the MSH files. I'll try rolling back certain components to see what is causing this. Read only is disabled for all files.

Problem solved - One of the MSH files (bes2_bldg_a_bot1) had been improperly hex edited to 04 00 00 04 instead of 04 00 00 00 04. It should be noted for future reference that this will cause ZeroEditor to crash.

The former [FC] member who is now inactive that helped with these hex edits made some other mistakes, so I've gone through the MSH files and fixed them.

Bypass DNAS Authentication for PS2 SWBF1
After several hours of research and experimentation I finally got SWBF1 multiplayer working on the PCSX2 Emulator! There was DNS error 864 every time I tried to connect so I looked through the shell LUA source, and I discovered a way to bypass the PS2 DNAS Server Authentication by modifying the munged ifs_mpps2_netconfig script. This method requires you to hex edit the ps2 shell.lvl which for me is stored in a 4.5GB ISO file that I hex edited using HxD since XVI32 didn't work. What this will do is skip the DNAS screen along with the obsolete patch page, taking you straight to the gamespy login and server lobby. Use the Primary DNS IP on your ps2 network adapter settings. Here's a screenshot of my settings and the 864 error message.

Proof Of Concept Video

In March 2016 the DNAS servers will possibly be shut down forever, so at that point players will need to install this fix to play online. Using this method its possible for PC and PS2 players to be in the same server but there are disadvantages to the PS2 version pretty much everything is inferior quality, missing sky textures, and limited to 20TPS. Its still fun though and ill leave the dedicated server up for some time. I can get up to 75-80FPS but I locked it at 60 for no speedhack distortion lag spikes.

There is more instructions and downloads needed beyond this video for emulation which I'll write a tutorial for later. This post is basically to inform everyone that it's now possible to completely bypass SWBF1 DNAS server authentication and how to apply the patch. The same method should be possible for SWBF2 as well, and if enough ppl are interested Ill look into building a similar patch for it.

I also looked through the the ps2 common.lvl script ifs_mp_opt but unfortunately the ps2 LUA doesn't include any codes for TPS customization or enabling visibility for all regions. I'll work on more shell/common hex edit improvements later. I want to try improving the default video settings next.

To bypass DNAS just copy/paste this code, then search for the hex value in HxD.
Code: [Select]
3D 28 6E 6F 6E 65 29 00 C1 00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00 00 00 00 00 0B 00 00 00 06 00 00 00 70 72 69 6E 74 00 2C 00 00 00 69 66 73 5F 6D 70 70 73 32 5F 6E 65 74 63 6F 6E 66 69 67 5F 62 75 73 79 70 6F 70 75 70 5F 66 6E 4F 6E 53 75 63 63 65 73 73 28 29 00 14 00 00 00 69 66 73 5F 6D 70 70 73 32 5F 6E 65 74 63 6F 6E 66 69 67 00 0B 00 00 00 50 6F 70 75 70 5F 42 75 73 79 00 0B 00 00 00 66 6E 41 63 74 69 76 61 74 65 00 1D 00 00 00 69 66 73 5F 6D 70 70 73 32 5F 6E 65 74 63 6F 6E 66 69 67 5F 53 68 6F 77 48 69 64 65 00 12 00 00 00 67 4F 6E 6C 69 6E 65 53 65 72 76 69 63 65 53 74 72 00 08 00 00 00 47 61 6D 65 53 70 79 00 1A 00 00 00 69 66 73 5F 6D 6F 76 69 65 74 72 61 6E 73 5F 50 75 73 68 53 63 72 65 65 6E 00 0F 00 00 00 69 66 73 5F 6D 70 70 73 32 5F 64 6E 61 73
That's a big chunk of code but were only editing the last part of it. Change this
Code: [Select]
70 73 32 5F 64 6E 61 73
To this, and save the file.
Code: [Select]
67 73 5F 6C 6F 67 69 6E
If you're playing this on an actual console you might next need to reburn the ISO or something but I haven't tested that. Now you can play the servers again :cheers:


I also recorded the console tutorials here

Note To Mods If this post is any way EULA infringing feel free to move it to a non public board.

Tech Support / Website Loading Issues [Solution]
« on: January 31, 2016, 07:42:05 PM »
There is some kind of issue with the SWBFGamers homepage. The Tunngle.net banner keeps trying to reload a connection and makes the browser tab spin indefinitely. In fact I had to install this firefox addon just to make it stop and have also blacklisted the Tunngle subnet on my firewall. I assume it's an issue with the Tunngle server. This has happened before on other sites so if you run into the problem just install this addon which lets you specify a custom time limit for websites to stop loading, it can be toggled off for uploading files. Doesn't work with chrome unfortunately.


Tech Support / Keyboard Problems
« on: January 27, 2016, 02:42:03 PM »
My keyboard has been having annoying problems lately it has gotten much worse. Over 80% of the time it messes up when the "a" key is pressed. Most commonly it will input the letter twice when only pressed once, other times it will add the letter several times, and sometimes it won't add the letter at all. It is difficult even to type this without having to hit backspace constantly.
Sometimes it also does this with the "f" key though not as often maybe 20% of the time. No other keys have this problem so I'm wondering if it is a mechanical fault or possibly a driver issue. Any ideas? Model Number RZ03-0038 Razer BlackWidow Ultimate

Edit Looks like a problem called "switch chattering" http://imgur.com/a/fyxIg
SYMPTOM: Repeating Characters...like "Characterrrrsssssss". TEST: Look for repeating characters in text editor. Doublecheck on another computer to eliminate SW (key repeat rate) issues. CAUSE: Switch chattering happens with all Cherry MX switches. Cause varies: Metal fatigue, contamination (often reported after liquid spill, misalignment of the metal leaf, dust. FIX: 1. Try Compressed air to clear out possible dust (not Elitekeyboards approved!) 2. Use Deoxit to clean contacts 3. Disassemble the switch and try cleaning contacts or even GENTLY rebending them. 4. If it continues to chatter replace the switch (see buying links in the wiki)

GameRanger, Tunngle and Internet / SWBF1 GameMaster 2016 Update
« on: January 26, 2016, 07:13:22 PM »

I've hex edited the original server and client files here. Only changes were "gamespy.com" to "gamespy.onl" in hex editor. These are for SWBF 1.2, I can upload the 1.3 patch later.


Includes GameMaster 2016 NoCD client and server Star Wars Battlefront 1.2 patch hex edited by Phobos.


Unified way to play online (new HEX-Edit way and dedicated executables!)
January 21 edited January 22 in Announcements
Hey guys, I recently bought the domain "gamespy.onl". This domain redirects to both masterservers via DNS. So in future you'll just need to Hex-Edit "gamespy.com" to "gamespy.onl". I also created a wiki page for that and will fill in all neccessary information in future.

This new domain will automatically rotate between the two masterserver hosts and will provide an higher level of availability for GameMaster.

Please update your executables then! Some people even using very old executables. In future I won't support the old domain names any more (meaning "gameshare.info").

I'll update our client / server executables over the next days. It's highly recommended that you'll use them instead of the old ones!


Redirect games to GameMaster

Since January 2016 GameMaster got a new way to give you an easy gaming experience. Our executables now automatically load balancing all requests to our GameMaster server without the need to specify an explicit Masterserver. Before you'd to use “d.gameshare.me” for our german masterserver and “u.gameshare.me” for our american masterserver. Now only “gamespy.onl” is required.

New executables from GameMaster will be available over the next days. Stay tuned.
Download our prebuilt executables

We already have changed all neccessary things for our supported games. Just download them at our filebase. This files aren't cracked. You'll need the original CD / DVD if the game want's it! If you don't trust our own executables just hex-edit them (see info below).
Hex-Edit your game executable on your own

To be able to play old games with our masterserver you'll simply need to hex-edit your main game executable. Find all strings with “gamespy.com” in it and replace them with “gamespy.onl”. After that you'll be able to play online again.

SWBF 1 and 2 Tournaments / Dark Trooper Championship 2015
« on: October 22, 2015, 01:45:47 PM »
Dark Trooper Championship 2015 
Draft Rules - Last Revision: November 13
DTC 2014 Thread - http://www.swbfgamers.com/index.php?topic=8174

DTC 2015 is planned to start on December 1st. It will go 4 weeks until Christmas and take a 1 week break, before resuming on January 1st and running another 2-6 weeks afterwards (6-10 weeks total), depending on how many players sign up. The rules are not finalized yet but they will be similar to DTC 2014. This is the draft as of October 2015, I'll update and post final rules within the next few weeks. All players will need to download the DTC+DTBC v1.5 installer, which will be released on the registration deadline. Anyone who is interested in playing or spectating/filming DTC 2015 can sign up or post questions here.
Signup Roster

Phobos, Anyder

Registration Deadline - November 30th 2015

DTC 2015 Rules, Mods, and Server Settings
- Enabled: Slow AutoHeal, Infinite Ammo, Global Radar
- Disabled: Grenades, Katana, Healthbots, CP Captures
- 1 second respawn timer, 3 seconds spawn protection
- Custom FOV settings can be chosen from in the included DTC side files, or a specific preference requested. Default values will include 65, 70 , 74, 78, 84, and 89. If my mod idea works players will be able to choose any custom number 1-120 directly thru the FOV.ini
- Dark Troopers move faster and are aesthetically improved (Reskinned Jet and Lasers by Phobos, Blue Jet Effect by SleepKiller, Shotgun Model by Sereja).
- There will be different colors of Dark Trooper to spawn as, White, Black, Red, Green, and Blue. Players can also toggle an override LVL which forces all DTs to appear White if they choose.
- Dual bacta packs always drop from kills and vanish within 15 seconds. These will heal 50% instead of 33% health.
- Transparency mods aka see through buildings can be enabled or disabled for participants. This is not wallhacking (noclip) which is a server side hack that won't be allowed. The default skins available will be Stock Mos Eisley, Callisto Mos Eisley, and Europa Mos Eisley v0.2 Beta Transparent Edition with FPS Boost Sky Enhancements by Phobos.
- Glitching in buildings is not allowed unless spectating.
- Prizes will consist of forum awards, crosshair reticules, and map skin mods.
- The DTC server will be hosted in New York for most balanced pings. 2 official duel servers will be running at once. For the final rounds, only 1 server will be hosted at a time, with the extra [FC] servers closed for maximum CPU performance.
- Swiss format will be used for 4-6 weeks, followed by a series of prefinal and final championship rounds for the top 4 competitors, hosted over a 2-4 week period.
- This year players will fight 2 duels per match consecutively, 1 for each side, instead of only 1 duel per match like last year.
- Each duel has 25 reinforcements per side, with a 3 ticket buffer round hosted first.
- All servers will be hosted at 40TPS for the first 4-6 weeks. Prefinal and Final rounds will be hosted at 50/60TPS.
- The final championship round format is being determined currently, it will be similar to DTC 2014.
- ELO Leaderboards will be updated based on DTC scores, but will not affect the DTC Tournament.
- Kills and Headshots will be added up for total points and prizes given to the top 4. A leaderboard script will be updated every week for current standings.
- There will be a separate scoreboard for Survivalist with a mystery prize given at the end of tournament. Narrow Escapes will not be awarded. The prize for this won't be of high significance because the player with 2nd most kills under 10% health doesn't receive any points in a duel.
Narrow Escapes: The number of times your health went down to less than 10% and you were healed back to 100% full health.
Survivalist: The player who gets the most kills while below 10% health wins this award.

Forum Awards
1st Place Total Kills+HS
2nd Place Total Kills+HS
3rd Place Total Kills+HS
4th Place Total Kills+HS
1st Place Headshots
1st Place Survivalist
All Participants

Crosshair Prizes
1st - DemonWing
1st (HS only) - BalrogWing
2nd - DragonWing
3rd - VultureWing
4th - FalconWing
5th - HawkWing
BatWing will be given to all who play at least the first 3 weeks of DTC.

Other Prizes
1st Survivalist - TBA
Other Awards - TBA

Spoiler (click to show/hide)

Pages: [1] 2 3 ... 26