Grand Theft Auto IV/Unused Text
This is a sub-page of Grand Theft Auto IV.
Contents
.gxt
Text strings that were found only in files with such format.
Cut Zombie Gamemode Text
~s~Press ~PAD_A~ to start
Placeholder...
Scrapped Money Cheatcode
0xA43E97D8 = enabled cheat - "Money"
Unused Mission Names
american.gxt has name leftovers from some missions, which may be either cut or side missions, since the game does not have any special names for side missions missions, these names could be connected with them, here's the list of them:
- American Dream - listed after Uncle Vlad and before Logging On missions. This is either a Roman's taxi driver side mission or a unknown cut mission. However, the taxi driver side mission unlocks after completing Jamaican Heat, so the question about American Dream is still open.
M_7 = Uncle Vlad M_7A = Uncle Vlad M_8 = American Dream M_8A = American Dream M_9 = Logging On M_9A = Logging On
- Exotic Exports - listed after Logging On and before Roman's Sorrow missions. Everything here is quite clear and logical, this side mission unlocks as it should, except that the game handles this mission as a mission for Roman and not for Brucie, but that's another question.
M_9 = Logging On M_9A = Logging On M_10 = Exotic Exports M_10A = Exotic Exports M_11 = Roman's Sorrow M_11A = Roman's Sorrow
- I and High - listed after Shadow and before Crime and Punishment missions. Here everything is also quite logical to assume that this is the name for the Jacob's Drug Delivery side mission. However, in the american.gxt there is another strange name - Jacob's Ladder, but at the moment it is unknown what exactly this could be connected with.
M_20 = Shadow M_20A = Shadow M_21 = I and High M_21A = I and High M_22 = Crime and Punishment M_22A = Crime and Pu...
0x3E7E8219 = Jacob's Ladder
- Races - listed after No. 1 and before Photo Shoot missions. There is no doubt that this is the name for the races that the player can ask Brucie on the phone.
M_42 = No. 1 M_42A = No. 1 M_43 = Races M_43A = Races M_44 = Photo Shoot M_44A = Photo Shoot
- High-End Assassin - listed after Catch The Wave and before Trespass missions. The Fixer's missions that the game handles as Phil missions, probably because he's the one who offers them to the player, except that this side mission unlocks after Truck Hustle mission instead of Catch The Wave, but this is not the only case where the order of the missions does not match what happens in the game itself.
M_79 = Catch The Wave M_79A = Catch the Wave M_80 = High-End Assassin M_80A = High-End Ass... M_81 = Trespass M_81A = Trespass
Dummy Text
Text | Location |
---|---|
Dummy label. THIS LABEL NEEDS TO BE HERE !!! |
american.gxt, french.gxt, german.gxt, italian.gxt, russian.gxt, spanish.gxt, and japanese.gxt (Bottom Half) |
This dummy label still needs to be here, even in the dawn of the next gen console. |
japanese.gxt |
Xbox LIVE Leftovers
The connection to Xbox LIVE has been lost. Returning to single player...
This connection error message leftover from the Xbox 360 version can be found in the files but isn't used for obvious reasons.
PlayStation 3 Executable Text
Various error and developer messages found inside the executable of the PlayStation 3 version.
Need to increase datachunk size. Data is too large Missing scripted speech asset. Check context and voice name. (context: %s; voice: %s; variation: %d) Burnt through all our speech memory. Time: %u audio: couldn't find speech context settings audio: couldn't find engine settings for Heli: %s A camera is at the origin, ceasing update up viewport to patch issues. Camera won't be working properly because the follow ped is a network clone! Loading IPLs about free cam what are we transitioning from? Hint has auto reset since an entity has seemed to disappear! #### Registering a random object that has been moved by a clone but not claimed by that clone's machine : #### CPedMoveBlendOnFoot : Ped has no base animation. As a temporary fix ANIM_MOVE_IDLE will be added. THERE IS NO MAP BELOW THE FOLLOWING COORS:%f %f %f. (FindGroundZFor3DCoord) Tell MikeD you need to increase the size of MAX_MLO_RENDER_LIST_SIZE Could not remove entity during interior destructor. Dumping entity to world. Please note in bug report if this is fatal... attempted to freeze a ped. will probably fall out of world... Skinned model contains both edge & gpu geometries.. currently unsupported! (TODO) Ran out of space for adding scripted coverpoints, only %i are allowed. [CGTARichPresence] FOR NOW THERE IS NO RICH PRESENCE FOR PS3 ... This will NOT apply the settings that we apply when loading from a stream. Fix the code!!!! (I won't annoy you with more fallback spew) ********** YOUR CHANNEL MASK IS SHIT! I'll fix it. Attempting to load resource '%s' referencing effect that doesn't exist. This may be due to a shader that was preloaded at resource generation time not being available now at runtime. Sorry, I cannot continue. ***** Resourced instance data in resource '%s' (effect '%s') doesn't match the shader any longer (count should be %d, is %d). You need rage_new resources. I will attempt to fix it for now. -maxtexturesize isn't supported on non-DEV builds *** WorldInverse is no longer supported, please remove it [use WorldInverseTranspose instead with params swapped] *** WorldViewInverse is no longer supported, please remove it [use ViewInverse and WorldInverseTranspose] Woah no size keys! audSoundPool::Shutdown() wasn't called - this isn't what killed the game, please don't put this in as an audio bug :-)
Windows-Exclusive
Placeholder Text
PLACEHOLDER
This is repeated several times.
Test.txt
blablablablablablabla
A text file found in the pc\textures directory.
TXDCut.txt
txdp csbravura, bravura csopcarla, copcarla cscopcarla92, copcarla cssabre92, sabre csfirela, firela csgreenwood, greenwoo csvoodoo, voodoo cszr350, zr350 cszr350b, zr350 cssadler, sadler cswashington, washing csbobcat92, bobcat cssecurica92, securica csglendale92, glendale csandrom92, androm csmothership, camper csmtbike92, mtbike cssavanna, savanna csremington92, remingtn csburrito92, burrito cstaxi92, taxi cssabre92, sabre csmonster, monster end
A leftover file from San Andreas that slipped right into the game's data folder. This simply redirected the game's cutscene car textures to the actual TXDs.
placeholder.sco
void main() { int iVar2; int iVar3; int iVar4; int iVar5; l_U4 = 0; l_U5 = 1; l_U6 = 3; l_U8 = 0; l_U25 = -1; l_U29 = 0; l_U30 = 1; l_U31 = 1; l_U39 = 150.00000000; l_U129 = 0; l_U130 = 150.00000000; l_U180 = 0; l_U490 = -1; PRINTSTRING( "+++++++ STARTED PLACEHOLDER MISSION (strand " ); PRINTINT( l_U491 + 1 ); PRINTSTRING( ")\n" ); SET_MISSION_FLAG( 1 ); l_U490 = l_U491; GET_GAME_TIMER( ref iVar2 ); iVar5 = 1000; WAIT( 1000 ); DO_SCREEN_FADE_IN( 500 ); if (IS_PLAYER_PLAYING( sub_210() )) { SET_PLAYER_CONTROL( sub_210(), 1 ); } while (true) { WAIT( 0 ); GET_GAME_TIMER( ref iVar3 ); iVar4 = iVar3 - iVar2; if (iVar4 >= iVar5) { PRINTSTRING( "PLACEHOLDER (strand " ); PRINTINT( l_U490 + 1 ); PRINTSTRING( ") MISSION RUNNING (" ); PRINTINT( iVar4 ); PRINTSTRING( ") - 'S' to Skip/Pass - 'F' to Fail\n" ); iVar5 += 1000; PRINT_NOW( "PH_HELP", 1500, 1 ); } if (IS_KEYBOARD_KEY_PRESSED( 31 )) { sub_474(); } if (IS_KEYBOARD_KEY_PRESSED( 33 )) { sub_15652(); } } return; } void sub_210() { return CONVERT_INT_TO_PLAYERINDEX( GET_PLAYER_ID() ); } void sub_474() { PRINTSTRING( "+++++++ PLACEHOLDER COMPLETE (strand " ); PRINTINT( l_U490 + 1 ); PRINTSTRING( ")\n" ); switch (l_U490) { case 0: sub_752(); break; case 1: sub_13657(); break; case 2: sub_13744(); break; case 3: sub_13828(); break; case 4: sub_13914(); break; case 5: sub_14001(); break; case 6: sub_14088(); break; case 7: sub_14176(); break; case 8: sub_14262(); break; case 9: sub_14348(); break; case 10: sub_14436(); break; case 11: sub_14521(); break; case 12: sub_14609(); break; case 13: sub_14697(); break; case 14: sub_14784(); break; case 15: sub_14872(); break; case 16: sub_14960(); break; case 17: sub_15048(); break; case 18: sub_15133(); break; case 19: sub_15221(); break; case 20: sub_15309(); break; case 21: sub_15397(); break; case 22: sub_15485(); break; default: sub_1607( "Placeholder: Unknown strand" ); } sub_15605(); return; } void sub_752() { int iVar2; int iVar3; int iVar4; iVar2 = 1; iVar3 = 0; iVar4 = 0; sub_770(); sub_829( iVar2, iVar3, iVar4 ); return; } void sub_770() { int I; I = 0; for ( I = 0; I < 5; I++ ) { l_U475[I] = 4; } return; } void sub_829(unknown uParam0, unknown uParam1, unknown uParam2) { int iVar5; iVar5 = 0; sub_860( iVar5, uParam0, uParam1, uParam2, "Friend_1" ); return; } void sub_860(int iParam0, boolean bParam1, boolean bParam2, boolean bParam3, unknown uParam4) { int iVar7; int iVar8; char[64] cVar9; int iVar25; int iVar26; boolean bVar27; unknown uVar28; unknown uVar29; int iVar30; boolean bVar31; iVar7 = -1; iVar8 = -1; StrCopy( ref cVar9, "", 64 ); if (bParam3) { if (g_U13391[iParam0]._fU80._fU0 == 0) { StrCopy( ref cVar9, uParam4, 64 ); ConcatString(ref cVar9, " Pass_Stats: friend mission", 64); sub_956( ref cVar9 ); return; } if (g_U13391[iParam0]._fU80._fU4 == -1) { StrCopy( ref cVar9, uParam4, 64 ); ConcatString(ref cVar9, " Pass_Stats: friend missionID", 64); sub_956( ref cVar9 ); return; } iVar7 = g_U13391[iParam0]._fU80._fU4; } else if (bParam2) { if (NOT g_U13391[iParam0]._fU160._fU80) { StrCopy( ref cVar9, uParam4, 64 ); ConcatString(ref cVar9, " Pass_Stats: proc mission", 64); sub_956( ref cVar9 ); return; } if (g_U13391[iParam0]._fU160._fU76 == -1) { StrCopy( ref cVar9, uParam4, 64 ); ConcatString(ref cVar9, " Pass_Stats: proc missionID", 64); sub_956( ref cVar9 ); return; } iVar7 = g_U13391[iParam0]._fU160._fU76; } else if (g_U13391[iParam0]._fU0._fU0 == 0) { StrCopy( ref cVar9, uParam4, 64 ); ConcatString(ref cVar9, " Pass_Stats: mission", 64); sub_956( ref cVar9 ); return; } if (g_U13391[iParam0]._fU0._fU4 == -1) { StrCopy( ref cVar9, uParam4, 64 ); ConcatString(ref cVar9, " Pass_Stats: missionID", 64); sub_956( ref cVar9 ); return; } iVar7 = g_U13391[iParam0]._fU0._fU4; iVar8 = sub_1533( iParam0, iVar7 );;; iVar25 = 0; if (bParam1) { g_U10981[iParam0]._fU24 = iVar7; } if (bParam2) { iVar25 = g_U13391[iParam0]._fU160._fU84; } if (bParam3) { g_U10981[iParam0]._fU144._fU8++; if ((g_U10981[iParam0]._fU144._fU8 >= g_U10981[iParam0]._fU144._fU4) AND (NOT g_U10981[iParam0]._fU144._fU12)) { iVar26 = 0; GET_GAME_TIMER( ref iVar26 ); g_U10981[iParam0]._fU144._fU16 = iVar26 + 60000; } if (g_U10981[iParam0]._fU144._fU8 == 1) { if (iParam0 == 3) { sub_1951( 0, 3 ); } if (iParam0 == 8) { sub_1951( 0, 4 ); } } } if (NOT (sub_2040( iParam0, iVar7, iVar25, bParam1, bParam2, bParam3 ))) { return; } if (bParam2) { g_U13391[iParam0]._fU160._fU84++; } if ((iVar7 == 12) AND (iParam0 == 0)) { SET_PLAYER_MOOD_PISSED_OFF( sub_210(), 150 ); } else { SET_PLAYER_MOOD_NORMAL( sub_210() ); } sub_11272(); bVar27 = true; uVar28 = sub_1533( iParam0, iVar7 ); uVar29 = sub_11914( iParam0 ); if (bParam1) { iVar30 = g_U13391[iParam0]._fU0._fU56; if ((iVar30 == 6) || (iVar30 == 5)) { bVar27 = false; } if (NOT g_U0) { bVar31 = true; if (IS_BIT_SET( g_U26758[uVar28]._fU108, 2 )) { REGISTER_MISSION_PASSED( ref g_U9921 ); sub_12445( 9, ref g_U13391[iParam0]._fU0._fU24 ); if ((g_U10978) AND (NOT bVar27)) { bVar31 = false; } if (bVar31) { sub_12875(); g_U9914._fU8 = 1; g_U9914._fU20 = sub_12960( iParam0, iVar7 ); } } if (bVar27) { sub_13017( iParam0 ); sub_13152( 0 ); sub_13233( uVar29, 0 ); } g_U10981[iParam0]._fU12 = 1; } if (bVar27) { sub_13338(); } } if (bParam2) { sub_12875(); sub_13426(); sub_13152( 0 ); } if (bParam3) { sub_12875(); sub_13466(); sub_13152( 0 ); sub_13233( uVar29, 0 ); } sub_13517(); return; } void sub_956(unknown uParam0) { PRINTSTRING( "FLOW WARNING: " ); PRINTSTRING( uParam0 ); PRINTNL(); SCRIPT_ASSERT( "FLOW WARNING: Press IGNORE button and look at console window for details" ); return; } int sub_1533(int iParam0, int iParam1) { unknown uVar4; int iVar5; int Result; if ((iParam0 >= 28) || (iParam0 < 0)) { sub_1607( "Main_Missions: Find_Trigger(): Illegal Strand ID" ); } uVar4 = g_U32640[iParam0]._fU0; iVar5 = g_U32640[iParam0]._fU4; for ( Result = uVar4; Result <= iVar5; Result++ ) { if (g_U26758[Result]._fU4 == iParam1) { return Result; } } return -1; } void sub_1607(unknown uParam0) { SCRIPT_ASSERT( uParam0 ); return; } void sub_1951(unknown uParam0, unknown uParam1) { int iVar4; iVar4 = 0; GET_GAME_TIMER( ref iVar4 ); g_U15874[uParam0]._fU0 = uParam1; g_U15874[uParam0]._fU4 = iVar4 + 7200000; return; } int sub_2040(unknown uParam0, unknown uParam1, unknown uParam2, boolean bParam3, unknown uParam4, unknown uParam5) { boolean bVar8; unknown uVar9; int iVar10; bVar8 = false; switch (uParam0) { case 0: bVar8 = sub_2248( uParam1 ); break; case 1: bVar8 = sub_4326( uParam1 ); break; case 2: bVar8 = sub_4552( uParam1 ); break; case 3: bVar8 = sub_4702( uParam1 ); break; case 4: bVar8 = sub_4980( uParam1 ); break; case 5: bVar8 = sub_5283( uParam1 ); break; case 6: bVar8 = sub_5482( uParam1 ); break; case 7: bVar8 = sub_5708( uParam1 ); break; case 8: bVar8 = sub_5943( uParam1 ); break; case 9: bVar8 = sub_6318( uParam1 ); break; case 10: bVar8 = sub_6565( uParam1 ); break; case 11: bVar8 = sub_6704( uParam1 ); break; case 12: bVar8 = sub_7003( uParam1 ); break; case 13: bVar8 = sub_7231( uParam1 ); break; case 14: bVar8 = sub_7518( uParam1 ); break; case 15: bVar8 = sub_7800( uParam1 ); break; case 16: bVar8 = sub_8082( uParam1 ); break; case 17: bVar8 = sub_8283( uParam1 ); break; case 18: bVar8 = sub_8356( uParam1 ); break; case 19: bVar8 = sub_8570( uParam1 ); break; case 20: bVar8 = sub_8823( uParam1 ); break; case 21: bVar8 = sub_9070( uParam1 ); break; case 22: bVar8 = sub_9271( uParam1 ); break; default: PRINTSTRING( "Strand ID: " ); PRINTINT( uParam0 ); PRINTNL(); sub_3931( "Flow_Pass_Stats: Flow_Pass_Strand_Mission(): Unknown strand ID." ); } if (NOT bVar8) { return 0; } uVar9 = sub_1533( uParam0, uParam1 ); if (bParam3) { iVar10 = g_U13391[uParam0]._fU0._fU56; if ((NOT (iVar10 == 6)) AND (NOT (iVar10 == 5))) { sub_9594( uVar9, uParam0 ); } } return 1; } int sub_2248(unknown uParam0) { int iVar3; boolean bVar4; iVar3 = 0; bVar4 = false; switch (uParam0) { case 0: sub_2527( iVar3, 25, 5, 2, 0, 0 ); break; case 1: sub_2527( iVar3, 30, 5, 2, 0, 0 ); break; case 2: sub_2527( iVar3, 0, 5, 0, 0, 0 ); break; case 4: sub_2527( iVar3, 50, 5, 2, 0, 0 ); break; case 5: sub_2527( iVar3, 100, 5, 2, 0, 0 ); break; case 6: sub_2527( iVar3, 150, 5, 2, 0, 0 ); break; case 8: sub_2527( iVar3, 0, 5, 2, 0, 0 ); break; case 9: sub_2527( iVar3, 0, 5, 2, 0, 0 ); break; case 10: sub_2527( iVar3, 0, 5, 2, 0, 0 ); break; case 11: sub_2527( iVar3, 0, 5, 2, 0, 0 ); break; case 12: sub_2527( iVar3, 0, 5, 2, 0, 0 ); break; case 13: sub_2527( iVar3, 0, 5, 2, 0, 0 ); break; case 15: sub_2527( iVar3, 250000, 5, 2, 0, 0 ); break; case 16: sub_2527( iVar3, 0, 0, 0, 0, 0 ); break; case 20: if (g_U15654[12]) { sub_2527( iVar3, 0, 5, 2, 0, 0 ); } else { sub_2527( iVar3, 250000, 0, 0, 0, 0 ); } break; case 7: sub_2527( iVar3, 0, 3, 1, 0, 0 ); break; case 3: case 30: case 14: case 37: case 18: case 19: case 17: case 21: break; case 22: case 23: case 24: case 25: case 26: case 27: case 28: sub_2527( iVar3, 0, sub_3809(), sub_4075(), 0, 0 ); break; default: sub_4234( "Friend 1", 1 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } if (bVar4) { sub_4234( "Friend 1", 0 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } return 1; } void sub_2527(unknown uParam0, unknown uParam1, unknown uParam2, unknown uParam3, unknown uParam4, int iParam5) { sub_2538( uParam1 ); sub_2712( uParam0, 0, uParam2 ); sub_2712( uParam0, 1, uParam3 ); sub_2712( uParam0, 2, uParam4 ); ProtectedSet(g_U26747[4], ProtectedGet(g_U26747[4]) + iParam5); sub_770(); return; } void sub_2538(unknown uParam0) { ADD_SCORE( sub_210(), uParam0 ); sub_2563( uParam0 ); return; } void sub_2563(int iParam0) { if (g_U0) { return; } if (iParam0 < 0) { sub_1607( "Flow_Achievements_Increase_Cash_From_Missions: negative cash given. Tell Keith." ); } INCREMENT_INT_STAT_NO_MESSAGE( 93, iParam0 ); return; } void sub_2712(unknown uParam0, int iParam1, int iParam2) { g_U10981[uParam0]._fU40[iParam1] += iParam2; if (g_U10981[uParam0]._fU40[iParam1] < 0) { g_U10981[uParam0]._fU40[iParam1] = 0; } if (g_U10981[uParam0]._fU40[iParam1] > 100) { g_U10981[uParam0]._fU40[iParam1] = 100; } if (iParam1 == 1) { sub_2869( uParam0 ); } return; } void sub_2869(unknown uParam0) { if (g_U0) { return; } if (IS_BIT_SET( ProtectedGet(g_U64791), 11 )) { return; } if (g_U10981[uParam0]._fU40[1] < 90) { return; } switch (uParam0) { case 0: SET_BIT( 1, 6 ); break; break; 2; 1; ref g_U64791; 1; ref g_U64791; break; case 3: SET_BIT( 1, 7 ); break; break; 2; 1; ref g_U64791; 1; ref g_U64791; break; case 7: SET_BIT( 1, 8 ); break; break; 2; 1; ref g_U64791; 1; ref g_U64791; break; case 8: SET_BIT( 1, 9 ); break; break; 2; 1; ref g_U64791; 1; ref g_U64791; break; case 13: SET_BIT( 1, 10 ); break; break; 2; 1; ref g_U64791; 1; ref g_U64791; break; } if ((NOT (IS_BIT_SET( ProtectedGet(g_U64791), 5 ))) || ((NOT (IS_BIT_SET( ProtectedGet(g_U64791), 4 ))) || ((NOT (IS_BIT_SET( ProtectedGet(g_U64791), 3 ))) || ((NOT (IS_BIT_SET( ProtectedGet(g_U64791), 2 ))) || (NOT (IS_BIT_SET( ProtectedGet(g_U64791), 1 ))))))) { return; } if (NOT (IS_BIT_SET( ProtectedGet(g_U64791), 7 ))) { return; } if (NOT (IS_BIT_SET( ProtectedGet(g_U64791), 9 ))) { return; } if (NOT (IS_BIT_SET( ProtectedGet(g_U64791), 10 ))) { return; } if (g_U10981[0]._fU8) { if (NOT (IS_BIT_SET( ProtectedGet(g_U64791), 6 ))) { return; } } if (g_U10981[7]._fU8) { if (NOT (IS_BIT_SET( ProtectedGet(g_U64791), 8 ))) { return; } } SET_BIT( 1, 11 ); AWARD_ACHIEVEMENT( 35 ); return; break; 2; 1; ref g_U64791; 1; ref g_U64791; break; } int sub_3809() { switch (l_U475[0]) { case 0: return 14; case 1: return 8; case 2: return 6; case 3: return 1; case 4: return 0; } sub_3931( "Get_TRUST(): Unknown Friend Pass ID" ); return 0; } void sub_3931(unknown uParam0) { PRINTSTRING( "FLOW ERROR: " ); PRINTSTRING( uParam0 ); PRINTNL(); SCRIPT_ASSERT( "FLOW ERROR: Press IGNORE button and look at console window for details" ); return; } int sub_4075() { switch (l_U475[1]) { case 0: return 10; case 1: return 6; case 2: return 3; case 3: return 1; case 4: return 0; } sub_3931( "Get_LIKE(): Unknown Friend Pass ID" ); return 0; } void sub_4234(unknown uParam0, unknown uParam1) { return; } int sub_4326(unknown uParam0) { int iVar3; boolean bVar4; iVar3 = 1; bVar4 = false; switch (uParam0) { case 0: sub_2527( iVar3, 50, 5, 5, 0, 0 ); break; case 1: sub_2527( iVar3, 100, 5, 5, 0, 0 ); break; case 2: sub_2527( iVar3, 150, 5, 5, 0, 0 ); break; case 3: sub_2527( iVar3, 200, 5, 5, 0, 0 ); break; default: sub_4234( "Contact 2", 1 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } if (bVar4) { sub_4234( "Contact 2", 0 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } return 1; } int sub_4552(unknown uParam0) { int iVar3; boolean bVar4; iVar3 = 2; bVar4 = false; switch (uParam0) { case 1: sub_2527( iVar3, 0, 5, 5, 0, 0 ); break; case 0: break; default: sub_4234( "Girl 3", 1 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } if (bVar4) { sub_4234( "Girl 3", 0 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } return 1; } int sub_4702(unknown uParam0) { int iVar3; boolean bVar4; iVar3 = 3; bVar4 = false; switch (uParam0) { case 0: sub_2527( iVar3, 200, 5, 2, 0, 0 ); break; case 1: sub_2527( iVar3, 250, 5, 2, 0, 0 ); break; case 2: sub_2527( iVar3, 250, 3, 1, 0, 0 ); break; case 3: case 4: case 5: case 6: case 7: case 8: case 9: sub_2527( iVar3, 0, sub_3809(), sub_4075(), 0, 0 ); break; default: sub_4234( "Friend 4", 1 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } if (bVar4) { sub_4234( "Friend 4", 0 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } return 1; } int sub_4980(unknown uParam0) { int iVar3; boolean bVar4; iVar3 = 4; bVar4 = false; switch (uParam0) { case 0: sub_2527( iVar3, 200, 5, 5, 0, 0 ); break; case 1: sub_2527( iVar3, 400, 5, 5, 0, 0 ); break; case 2: sub_2527( iVar3, 500, 5, 5, 0, 0 ); break; case 3: sub_2527( iVar3, 600, 5, 5, 0, 0 ); break; case 4: sub_2527( iVar3, 700, 5, 5, 0, 0 ); break; case 5: sub_2527( iVar3, 0, 5, 5, 0, 0 ); break; case 6: sub_2527( iVar3, 0, 5, 5, 0, 0 ); break; default: sub_4234( "Contact 5", 1 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } if (bVar4) { sub_4234( "Contact 5", 0 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } return 1; } int sub_5283(unknown uParam0) { int iVar3; boolean bVar4; iVar3 = 5; bVar4 = false; switch (uParam0) { case 0: sub_2527( iVar3, 1000, 5, 5, 0, 0 ); break; case 1: sub_2527( iVar3, 1100, 5, 5, 0, 0 ); break; case 2: sub_2527( iVar3, 1500, 5, 5, 0, 0 ); break; default: sub_4234( "Contact 7", 1 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } if (bVar4) { sub_4234( "Contact 7", 0 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } return 1; } int sub_5482(unknown uParam0) { int iVar3; boolean bVar4; iVar3 = 6; bVar4 = false; switch (uParam0) { case 0: sub_2527( iVar3, 1500, 5, 5, 0, 0 ); break; case 1: sub_2527( iVar3, 2000, 5, 5, 0, 0 ); break; case 2: sub_2527( iVar3, 2500, 5, 5, 0, 0 ); break; case 3: sub_2527( iVar3, 0, 5, 5, 0, 0 ); break; default: sub_4234( "Contact 7b", 1 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } if (bVar4) { sub_4234( "Contact 7b", 0 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } return 1; } int sub_5708(unknown uParam0) { int iVar3; boolean bVar4; iVar3 = 7; bVar4 = false; switch (uParam0) { case 0: sub_2527( iVar3, 6000, 5, 2, 0, 0 ); break; case 1: sub_2527( iVar3, 6250, 5, 2, 0, 0 ); break; case 2: case 3: case 4: case 5: case 6: sub_2527( iVar3, 0, sub_3809(), sub_4075(), 0, 0 ); break; default: sub_4234( "Friend 8", 1 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } if (bVar4) { sub_4234( "Friend 8", 0 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } return 1; } int sub_5943(unknown uParam0) { int iVar3; boolean bVar4; int iVar5; iVar3 = 8; bVar4 = false; iVar5 = 500; switch (uParam0) { case 0: sub_2527( iVar3, 3500, 5, 2, 0, 0 ); break; case 1: sub_2527( iVar3, 3500, 5, 2, 0, 0 ); break; case 4: sub_2527( iVar3, 6750, 5, 2, 0, 0 ); break; case 5: sub_2527( iVar3, 0, 5, 2, 0, 0 ); break; case 2: case 3: break; case 6: sub_2527( iVar3, iVar5, 3, 1, 0, 0 ); INCREMENT_INT_STAT_NO_MESSAGE( 109, iVar5 ); break; case 7: case 8: case 9: case 10: case 11: case 12: case 13: case 14: sub_2527( iVar3, 0, sub_3809(), sub_4075(), 0, 0 ); break; default: sub_4234( "Friend 9", 1 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } if (bVar4) { sub_4234( "Friend 9", 0 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } return 1; } int sub_6318(unknown uParam0) { int iVar3; int iVar4; boolean bVar5; iVar3 = 9; iVar4 = 7; bVar5 = false; switch (uParam0) { case 0: sub_2527( iVar3, 6500, 5, 5, 0, 0 ); break; case 1: sub_2527( iVar3, 6750, 5, 5, 0, 0 ); break; case 3: if (g_U15654[39]) { sub_2527( iVar4, 0, 5, 10, 0, 0 ); } else { sub_2527( iVar3, 0, 5, 5, 0, 0 ); } break; case 2: break; default: sub_4234( "Contact 10", 1 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } if (bVar5) { sub_4234( "Contact 10", 0 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } return 1; } int sub_6565(unknown uParam0) { int iVar3; boolean bVar4; iVar3 = 10; bVar4 = false; switch (uParam0) { case 0: sub_2527( iVar3, 0, 1, 1, 0, 0 ); break; default: sub_4234( "Girl 11", 1 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } if (bVar4) { sub_4234( "Girl 11", 0 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } return 1; } int sub_6704(unknown uParam0) { int iVar3; boolean bVar4; iVar3 = 11; bVar4 = false; switch (uParam0) { case 0: sub_2527( iVar3, 1000, 5, 5, 0, 0 ); break; case 3: sub_2527( iVar3, 1000, 5, 5, 0, 0 ); break; case 4: sub_2527( iVar3, 5000, 5, 5, 0, 0 ); break; case 5: sub_2527( iVar3, 5000, 5, 5, 0, 0 ); break; case 6: sub_2527( iVar3, 0, 5, 5, 0, 0 ); break; case 7: sub_2527( iVar3, 0, 5, 5, 0, 0 ); break; case 1: case 2: break; default: sub_4234( "Contact 12", 1 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } if (bVar4) { sub_4234( "Contact 12", 0 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } return 1; } int sub_7003(unknown uParam0) { int iVar3; boolean bVar4; iVar3 = 12; bVar4 = false; switch (uParam0) { case 0: sub_2527( iVar3, 6500, 5, 5, 0, 0 ); break; case 1: sub_2527( iVar3, 6750, 5, 5, 0, 0 ); break; case 2: sub_2527( iVar3, 7000, 5, 5, 0, 0 ); break; case 3: sub_2527( iVar3, 7500, 5, 5, 0, 0 ); break; default: sub_4234( "Contact 13", 1 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } if (bVar4) { sub_4234( "Contact 13", 0 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } return 1; } int sub_7231(unknown uParam0) { int iVar3; boolean bVar4; iVar3 = 13; bVar4 = false; switch (uParam0) { case 0: sub_2527( iVar3, 7500, 5, 2, 0, 5 ); break; case 1: sub_2527( iVar3, 8000, 5, 2, 0, 5 ); break; case 3: sub_2527( iVar3, 250000, 5, 2, 0, 5 ); break; case 4: case 5: case 6: case 7: case 8: case 9: sub_2527( iVar3, 0, sub_3809(), sub_4075(), 0, 0 ); break; case 2: break; default: sub_4234( "Friend 15", 1 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } if (bVar4) { sub_4234( "Friend 15", 0 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } return 1; } int sub_7518(unknown uParam0) { int iVar3; boolean bVar4; iVar3 = 14; bVar4 = false; switch (uParam0) { case 0: sub_2527( iVar3, 8500, 5, 5, 0, 0 ); break; case 1: sub_2527( iVar3, 9000, 5, 5, 0, 0 ); break; case 2: sub_2527( iVar3, 9500, 5, 5, 0, 0 ); break; case 3: sub_2527( iVar3, 9500, 5, 5, 0, 0 ); break; case 4: sub_2527( iVar3, 9500, 5, 5, 0, 0 ); break; case 5: sub_2527( iVar3, 11000, 5, 5, 0, 0 ); break; default: sub_4234( "Contact 16", 1 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } if (bVar4) { sub_4234( "Contact 16", 0 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } return 1; } int sub_7800(unknown uParam0) { int iVar3; boolean bVar4; iVar3 = 15; bVar4 = false; switch (uParam0) { case 0: sub_2527( iVar3, 9000, 5, 5, 0, 0 ); break; case 1: sub_2527( iVar3, 9250, 5, 5, 0, 0 ); break; case 4: sub_2527( iVar3, 9500, 5, 5, 0, 0 ); break; case 6: sub_2527( iVar3, 9750, 5, 5, 0, 0 ); break; case 7: sub_2527( iVar3, 0, 5, 5, 0, 0 ); break; case 2: case 3: case 5: break; default: sub_4234( "Contact 18", 1 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } if (bVar4) { sub_4234( "Contact 18", 0 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } return 1; } int sub_8082(unknown uParam0) { int iVar3; boolean bVar4; iVar3 = 16; bVar4 = false; switch (uParam0) { case 0: sub_2527( iVar3, 6500, 5, 5, 0, 0 ); break; case 1: sub_2527( iVar3, 7000, 5, 5, 0, 0 ); break; case 2: sub_2527( iVar3, 7500, 5, 5, 0, 0 ); break; default: sub_4234( "Contact 19", 1 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } if (bVar4) { sub_4234( "Contact 19", 0 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } return 1; } int sub_8283(unknown uParam0) { int iVar3; boolean bVar4; iVar3 = 17; bVar4 = false; if (bVar4) { sub_4234( "Girl 20", 0 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } return 1; } int sub_8356(unknown uParam0) { int iVar3; boolean bVar4; iVar3 = 18; bVar4 = false; switch (uParam0) { case 0: sub_2527( iVar3, 6000, 5, 5, 0, 0 ); break; case 1: sub_2527( iVar3, 6250, 5, 5, 0, 0 ); break; case 2: sub_2527( iVar3, 6500, 5, 5, 0, 0 ); break; case 3: break; default: sub_4234( "Contact 21", 1 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } if (bVar4) { sub_4234( "Contact 21", 0 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } return 1; } int sub_8570(unknown uParam0) { int iVar3; boolean bVar4; iVar3 = 19; bVar4 = false; switch (uParam0) { case 0: sub_2527( iVar3, 7500, 5, 5, 0, 0 ); break; case 2: sub_2527( iVar3, 10500, 5, 5, 0, 0 ); break; case 3: sub_2527( iVar3, 11000, 5, 5, 0, 0 ); break; case 4: sub_2527( iVar3, 12000, 5, 5, 0, 0 ); break; case 1: sub_2527( iVar3, 0, 3, 3, 0, 0 ); break; default: sub_4234( "Contact 22", 1 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } if (bVar4) { sub_4234( "Contact 22", 0 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } return 1; } int sub_8823(unknown uParam0) { int iVar3; boolean bVar4; iVar3 = 20; bVar4 = false; switch (uParam0) { case 1: sub_2527( iVar3, 10500, 5, 5, 0, 0 ); break; case 2: sub_2527( iVar3, 0, 5, 5, 0, 0 ); break; case 3: sub_2527( iVar3, 13000, 5, 5, 0, 0 ); break; case 5: sub_2527( iVar3, 14500, 5, 5, 0, 0 ); break; case 4: case 0: break; default: sub_4234( "Contact 24", 1 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } if (bVar4) { sub_4234( "Contact 24", 0 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } return 1; } int sub_9070(unknown uParam0) { int iVar3; boolean bVar4; iVar3 = 21; bVar4 = false; switch (uParam0) { case 0: sub_2527( iVar3, 12000, 5, 5, 0, 0 ); break; case 1: sub_2527( iVar3, 13250, 5, 5, 0, 0 ); break; case 2: sub_2527( iVar3, 14500, 5, 5, 0, 0 ); break; default: sub_4234( "Contact 25", 1 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } if (bVar4) { sub_4234( "Contact 25", 0 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } return 1; } int sub_9271(unknown uParam0) { int iVar3; int iVar4; boolean bVar5; iVar3 = 22; iVar4 = 8; bVar5 = false; switch (uParam0) { case 0: sub_2527( iVar4, 0, 3, 1, 0, 0 ); break; default: sub_4234( "Girl 26", 1 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } if (bVar5) { sub_4234( "Girl 26", 0 ); sub_2527( iVar3, 10, 0, 0, 0, 0 ); return 0; } return 1; } void sub_9594(int iParam0, int iParam1) { if (g_U0) { return; } if (iParam0 == -1) { return; } if (iParam1 == -1) { return; } if (sub_9642( iParam0, iParam1 )) { INCREMENT_INT_STAT_NO_MESSAGE( 253, 1 ); sub_10373( iParam1 ); } return; } int sub_9642(int iParam0, int iParam1) { int iVar4; boolean bVar5; int iVar6; if (g_U0) { return 0; } if (iParam0 == -1) { return 0; } if (iParam1 == -1) { return 0; } iVar4 = g_U13391[iParam1]._fU0._fU56; bVar5 = iVar4 == 6; if (bVar5) { return 0; } iVar6 = 0; if (NOT (IS_BIT_SET( g_U26758[iParam0]._fU108, 3 ))) { iVar6 = g_U26758[iParam0]._fU104; if (iVar6 > 0) { sub_9782( 0, iVar6 ); g_U13334[iParam1]._fU4 += iVar6; } SET_BIT( ref g_U26758[iParam0]._fU108, 3 ); return 1; } return 0; } void sub_9782(unknown uParam0, int iParam1) { g_U32871[uParam0]._fU4 += iParam1; if (g_U32871[uParam0]._fU4 > g_U32871[uParam0]._fU0) { SCRIPT_ASSERT( "Flow_Achievements_Game_Progress_Made: Current Category is over target value" ); g_U32871[uParam0]._fU4 = g_U32871[uParam0]._fU0; } sub_9964( 0 ); return; } void sub_9964(boolean bParam0) { float fVar3; float fVar4; float fVar5; float fVar6; boolean bVar7; int I; fVar3 = 0.00000000; fVar4 = 0.00000000; fVar5 = 0.00000000; fVar6 = 0.00000000; bVar7 = true; I = 0; for ( I = 0; I < 8; I++ ) { if (g_U32871[I]._fU4 == g_U32871[I]._fU0) { fVar4 = g_U32871[I]._fU8; } else { bVar7 = false; fVar5 = TO_FLOAT( g_U32871[I]._fU0 ); fVar6 = TO_FLOAT( g_U32871[I]._fU4 ); fVar4 = (fVar6 / fVar5) * g_U32871[I]._fU8; } fVar3 += fVar4; } if (fVar3 > 100.00000000) { fVar3 = 99.99000000; } if (bVar7) { fVar3 = 100.00000000; } SET_FLOAT_STAT( 0, fVar3 ); if (bVar7) { sub_10219(); } if ((NOT (# -NULL-0xc27c84())) AND ((NOT bParam0) AND (bVar7))) { PRINT_HELP( "GAME100" ); } return; } void sub_10219() { ENABLE_MAX_AMMO_CAP( 0 ); return; } void sub_10373(int iParam0) { float fVar3; float fVar4; float fVar5; if (g_U0) { return; } if (iParam0 == -1) { return; } if (g_U13334[iParam0]._fU0 == 0) { return; } fVar3 = 0.00000000; fVar4 = 0.00000000; fVar5 = 0.00000000; if (g_U13334[iParam0]._fU4 == g_U13334[iParam0]._fU0) { fVar3 = 100.00000000; } else { fVar4 = TO_FLOAT( g_U13334[iParam0]._fU0 ); fVar5 = TO_FLOAT( g_U13334[iParam0]._fU4 ); fVar3 = fVar5 / fVar4; fVar3 *= 100.00000000; } switch (iParam0) { case 0: sub_10706( 3 ); SET_FLOAT_STAT( 3, fVar3 ); break; case 1: sub_10706( 4 ); SET_FLOAT_STAT( 4, fVar3 ); break; case 3: sub_10706( 7 ); SET_FLOAT_STAT( 7, fVar3 ); break; case 4: sub_10706( 8 ); SET_FLOAT_STAT( 8, fVar3 ); break; case 5: sub_10706( 9 ); SET_FLOAT_STAT( 9, fVar3 ); break; case 6: sub_10706( 10 ); SET_FLOAT_STAT( 10, fVar3 ); break; case 7: sub_10706( 13 ); SET_FLOAT_STAT( 13, fVar3 ); break; case 8: sub_10706( 16 ); SET_FLOAT_STAT( 16, fVar3 ); break; case 9: sub_10706( 17 ); SET_FLOAT_STAT( 17, fVar3 ); break; case 11: sub_10706( 18 ); SET_FLOAT_STAT( 18, fVar3 ); break; case 12: sub_10706( 19 ); SET_FLOAT_STAT( 19, fVar3 ); break; case 13: sub_10706( 22 ); SET_FLOAT_STAT( 22, fVar3 ); break; case 14: sub_10706( 23 ); SET_FLOAT_STAT( 23, fVar3 ); break; case 15: sub_10706( 24 ); SET_FLOAT_STAT( 24, fVar3 ); break; case 16: sub_10706( 25 ); SET_FLOAT_STAT( 25, fVar3 ); break; case 18: sub_10706( 26 ); SET_FLOAT_STAT( 26, fVar3 ); break; case 19: sub_10706( 27 ); SET_FLOAT_STAT( 27, fVar3 ); break; case 20: sub_10706( 29 ); SET_FLOAT_STAT( 29, fVar3 ); break; case 21: sub_10706( 28 ); SET_FLOAT_STAT( 28, fVar3 ); break; default: return; } return; } void sub_10706(unknown uParam0) { if ((GET_STAT_FRONTEND_VISIBILITY( uParam0 )) == 0) { SET_STAT_FRONTEND_VISIBILITY( uParam0, 1 ); } return; } void sub_11272() { int I; for ( I = 0; I <= (g_U569 - 1); I++ ) { if ((g_U569[I]._fU20) AND ((sub_11310( 5, g_U569[I] )) == 1)) { if ((sub_11310( 1, g_U569[I] )) != 0) { sub_11596( I ); } } } if (NOT sub_11762()) { SET_MESSAGES_WAITING( 0 ); g_U91._fU404 = 1000; } if (g_U91._fU0 == 1014) { g_U91._fU92 = 1; } return; } int sub_11310(unknown uParam0, unknown uParam1, unknown uParam2, unknown uParam3, unknown uParam4, unknown uParam5, unknown uParam6) { switch (uParam0) { case 0: return GET_BITS_IN_RANGE( uParam1._fU0[1], 14, 23 ); break; case 1: return GET_BITS_IN_RANGE( uParam1._fU0[0], 0, 13 ); break; case 2: return GET_BITS_IN_RANGE( uParam1._fU0[0], 14, 27 ); break; case 3: return GET_BITS_IN_RANGE( uParam1._fU0[1], 0, 13 ); break; case 4: return GET_BITS_IN_RANGE( uParam1._fU0[1], 24, 27 ); break; case 5: return GET_BITS_IN_RANGE( uParam1._fU0[0], 28, 31 ); break; case 6: return uParam1._fU0[2]; break; } return -1; } void sub_11596(int iParam0) { int I; if (iParam0 < (g_U569 - 1)) { for ( I = iParam0 + 1; I <= (g_U569 - 1); I++ ) { g_U569[I - 1] = {g_U569[I]}; } } sub_11681( g_U569 - 1 ); return; } void sub_11681(unknown uParam0) { g_U569[uParam0]._fU0[0] = -1; g_U569[uParam0]._fU0[1] = -1; g_U569[uParam0]._fU0[2] = -1; return; } int sub_11762() { int I; for ( I = 0; I <= (g_U569 - 1); I++ ) { if ((sub_11310( 4, g_U569[I] )) == 0) { return 1; } } return 0; } int sub_11914(unknown uParam0) { switch (uParam0) { case 0: return 0; case 1: return 1; case 2: return 2; case 3: return 3; case 4: return 4; case 5: return 5; case 6: return 6; case 7: return 7; case 8: return 8; case 9: return 9; case 10: return 10; case 11: return 11; case 12: return 12; case 13: return 13; case 14: return 14; case 15: return 15; case 16: return 16; case 17: return 17; case 18: return 18; case 19: return 19; case 20: return 22; case 21: return 20; case 22: return 21; } PRINTSTRING( "UNKNOWN STRAND ID: " ); PRINTINT( uParam0 ); PRINTNL(); sub_1607( "Flow_public: Return_Contact_From_Strand(): Unknown strand" ); return 57; } void sub_12445(unknown uParam0, unknown uParam1) { sub_12464( uParam0, 0, 0.00000000, uParam1 ); return; } void sub_12464(unknown uParam0, unknown uParam1, unknown uParam2, unknown uParam3) { unknown uVar6; unknown uVar7; unknown uVar8; unknown uVar9; unknown uVar10; unknown uVar11; unknown uVar12; unknown uVar13; unknown uVar14; unknown uVar15; unknown uVar16; unknown uVar17; unknown uVar18; unknown uVar19; unknown uVar20; unknown uVar21; switch (uParam0) { case 0: PLAYSTATS_INT( "SPRUNK_BOUGHT", uParam1 ); break; case 1: PLAYSTATS_INT( "HOTDOG_BOUGHT", uParam1 ); break; case 2: PLAYSTATS_INT( "NUTS_BOUGHT", uParam1 ); break; case 3: PLAYSTATS_INT( "BURGERS_BOUGHT", uParam1 ); break; case 7: PLAYSTATS_INT( "DONATE_BEGGAR", uParam1 ); break; case 8: PLAYSTATS_INT( "DONATE_BUSKER", uParam1 ); break; case 4: PLAYSTATS_INT( "BSHOT_BOUGHT", uParam1 ); break; case 5: PLAYSTATS_INT( "CBELL_BOUGHT", uParam1 ); break; case 6: PLAYSTATS_INT( "CAFE_BOUGHT", uParam1 ); break; case 9: break; } return; } void sub_12875() { g_U9914._fU0 = 1; g_U9914._fU4 = 0; g_U9914._fU8 = 0; g_U9914._fU12 = 0; g_U9914._fU16 = 0; g_U9914._fU20 = 0; g_U9914._fU24 = 7; return; } int sub_12960(int iParam0, int iParam1) { if (iParam0 == 0) { if (iParam1 == 20) { return 1; } } return 0; } void sub_13017(unknown uParam0) { sub_13026(); g_U10981[uParam0]._fU116 = 0; return; } void sub_13026() { int I; I = 0; for ( I = 0; I < 28; I++ ) { if (g_U10981[I]._fU144._fU36) { g_U10981[I]._fU28 = 1; } g_U10981[I]._fU144._fU36 = 0; } return; } void sub_13152(unknown uParam0) { if (g_U9385) { g_U9385 = 0; return; } g_U9380._fU0 = 1; g_U9380._fU4 = uParam0; g_U9380._fU8 = 0; g_U9380._fU12 = 0; g_U9380._fU16 = 0; return; } void sub_13233(int iParam0, boolean bParam1) { int iVar4; if (NOT (iParam0 < 57)) { return; } iVar4 = 0; GET_GAME_TIMER( ref iVar4 ); g_U26671[iParam0] = iVar4; if (bParam1) { g_U26671[iParam0] += 30000; } return; } void sub_13338() { sub_13347(); return; } void sub_13347() { if (COMPARE_STRING( ref g_U9926, "" )) { return; } PLAYSTATS_MISSION_PASSED( ref g_U9926 ); StrCopy( ref g_U9926, "", 16 ); return; } void sub_13426() { sub_13347(); return; } void sub_13466() { sub_13347(); StrCopy( ref g_U9926, "FPASS", 16 ); return; } void sub_13517() { int iVar2; int iVar3; iVar2 = 0; GET_GAME_TIMER( ref iVar2 ); iVar3 = iVar2 + sub_13539(); if (iVar3 > g_U63988._fU4) { g_U63988._fU4 = iVar3; g_U63988._fU8 = iVar2; } return; } int sub_13539() { if (g_U15654[8]) { return 27000; } return 15000; } void sub_13657() { int iVar2; int iVar3; int iVar4; iVar2 = 1; iVar3 = 0; iVar4 = 0; sub_770(); sub_13686( iVar2, iVar3, iVar4 ); return; } void sub_13686(unknown uParam0, unknown uParam1, unknown uParam2) { int iVar5; iVar5 = 1; sub_860( iVar5, uParam0, uParam1, uParam2, "Contact_2" ); return; } void sub_13744() { int iVar2; int iVar3; int iVar4; iVar2 = 1; iVar3 = 0; iVar4 = 0; sub_770(); sub_13773( iVar2, iVar3, iVar4 ); return; } void sub_13773(unknown uParam0, unknown uParam1, unknown uParam2) { int iVar5; iVar5 = 2; sub_860( iVar5, uParam0, uParam1, uParam2, "Girl_3" ); return; } void sub_13828() { int iVar2; int iVar3; int iVar4; iVar2 = 1; iVar3 = 0; iVar4 = 0; sub_770(); sub_13857( iVar2, iVar3, iVar4 ); return; } void sub_13857(unknown uParam0, unknown uParam1, unknown uParam2) { int iVar5; iVar5 = 3; sub_860( iVar5, uParam0, uParam1, uParam2, "Friend_4" ); return; } void sub_13914() { int iVar2; int iVar3; int iVar4; iVar2 = 1; iVar3 = 0; iVar4 = 0; sub_770(); sub_13943( iVar2, iVar3, iVar4 ); return; } void sub_13943(unknown uParam0, unknown uParam1, unknown uParam2) { int iVar5; iVar5 = 4; sub_860( iVar5, uParam0, uParam1, uParam2, "Contact_5" ); return; } void sub_14001() { int iVar2; int iVar3; int iVar4; iVar2 = 1; iVar3 = 0; iVar4 = 0; sub_770(); sub_14030( iVar2, iVar3, iVar4 ); return; } void sub_14030(unknown uParam0, unknown uParam1, unknown uParam2) { int iVar5; iVar5 = 5; sub_860( iVar5, uParam0, uParam1, uParam2, "Contact_7" ); return; } void sub_14088() { int iVar2; int iVar3; int iVar4; iVar2 = 1; iVar3 = 0; iVar4 = 0; sub_770(); sub_14117( iVar2, iVar3, iVar4 ); return; } void sub_14117(unknown uParam0, unknown uParam1, unknown uParam2) { int iVar5; iVar5 = 6; sub_860( iVar5, uParam0, uParam1, uParam2, "Contact_7b" ); return; } void sub_14176() { int iVar2; int iVar3; int iVar4; iVar2 = 1; iVar3 = 0; iVar4 = 0; sub_770(); sub_14205( iVar2, iVar3, iVar4 ); return; } void sub_14205(unknown uParam0, unknown uParam1, unknown uParam2) { int iVar5; iVar5 = 7; sub_860( iVar5, uParam0, uParam1, uParam2, "Friend_8" ); return; } void sub_14262() { int iVar2; int iVar3; int iVar4; iVar2 = 1; iVar3 = 0; iVar4 = 0; sub_770(); sub_14291( iVar2, iVar3, iVar4 ); return; } void sub_14291(unknown uParam0, unknown uParam1, unknown uParam2) { int iVar5; iVar5 = 8; sub_860( iVar5, uParam0, uParam1, uParam2, "Friend_9" ); return; } void sub_14348() { int iVar2; int iVar3; int iVar4; iVar2 = 1; iVar3 = 0; iVar4 = 0; sub_770(); sub_14377( iVar2, iVar3, iVar4 ); return; } void sub_14377(unknown uParam0, unknown uParam1, unknown uParam2) { int iVar5; iVar5 = 9; sub_860( iVar5, uParam0, uParam1, uParam2, "Contact_10" ); return; } void sub_14436() { int iVar2; int iVar3; int iVar4; iVar2 = 1; iVar3 = 0; iVar4 = 0; sub_770(); sub_14465( iVar2, iVar3, iVar4 ); return; } void sub_14465(unknown uParam0, unknown uParam1, unknown uParam2) { int iVar5; iVar5 = 10; sub_860( iVar5, uParam0, uParam1, uParam2, "Girl_11" ); return; } void sub_14521() { int iVar2; int iVar3; int iVar4; iVar2 = 1; iVar3 = 0; iVar4 = 0; sub_770(); sub_14550( iVar2, iVar3, iVar4 ); return; } void sub_14550(unknown uParam0, unknown uParam1, unknown uParam2) { int iVar5; iVar5 = 11; sub_860( iVar5, uParam0, uParam1, uParam2, "Contact_12" ); return; } void sub_14609() { int iVar2; int iVar3; int iVar4; iVar2 = 1; iVar3 = 0; iVar4 = 0; sub_770(); sub_14638( iVar2, iVar3, iVar4 ); return; } void sub_14638(unknown uParam0, unknown uParam1, unknown uParam2) { int iVar5; iVar5 = 12; sub_860( iVar5, uParam0, uParam1, uParam2, "Contact_13" ); return; } void sub_14697() { int iVar2; int iVar3; int iVar4; iVar2 = 1; iVar3 = 0; iVar4 = 0; sub_770(); sub_14726( iVar2, iVar3, iVar4 ); return; } void sub_14726(unknown uParam0, unknown uParam1, unknown uParam2) { int iVar5; iVar5 = 13; sub_860( iVar5, uParam0, uParam1, uParam2, "Friend_15" ); return; } void sub_14784() { int iVar2; int iVar3; int iVar4; iVar2 = 1; iVar3 = 0; iVar4 = 0; sub_770(); sub_14813( iVar2, iVar3, iVar4 ); return; } void sub_14813(unknown uParam0, unknown uParam1, unknown uParam2) { int iVar5; iVar5 = 14; sub_860( iVar5, uParam0, uParam1, uParam2, "Contact_16" ); return; } void sub_14872() { int iVar2; int iVar3; int iVar4; iVar2 = 1; iVar3 = 0; iVar4 = 0; sub_770(); sub_14901( iVar2, iVar3, iVar4 ); return; } void sub_14901(unknown uParam0, unknown uParam1, unknown uParam2) { int iVar5; iVar5 = 15; sub_860( iVar5, uParam0, uParam1, uParam2, "Contact_18" ); return; } void sub_14960() { int iVar2; int iVar3; int iVar4; iVar2 = 1; iVar3 = 0; iVar4 = 0; sub_770(); sub_14989( iVar2, iVar3, iVar4 ); return; } void sub_14989(unknown uParam0, unknown uParam1, unknown uParam2) { int iVar5; iVar5 = 16; sub_860( iVar5, uParam0, uParam1, uParam2, "Contact_19" ); return; } void sub_15048() { int iVar2; int iVar3; int iVar4; iVar2 = 1; iVar3 = 0; iVar4 = 0; sub_770(); sub_15077( iVar2, iVar3, iVar4 ); return; } void sub_15077(unknown uParam0, unknown uParam1, unknown uParam2) { int iVar5; iVar5 = 17; sub_860( iVar5, uParam0, uParam1, uParam2, "Girl_20" ); return; } void sub_15133() { int iVar2; int iVar3; int iVar4; iVar2 = 1; iVar3 = 0; iVar4 = 0; sub_770(); sub_15162( iVar2, iVar3, iVar4 ); return; } void sub_15162(unknown uParam0, unknown uParam1, unknown uParam2) { int iVar5; iVar5 = 18; sub_860( iVar5, uParam0, uParam1, uParam2, "Contact_21" ); return; } void sub_15221() { int iVar2; int iVar3; int iVar4; iVar2 = 1; iVar3 = 0; iVar4 = 0; sub_770(); sub_15250( iVar2, iVar3, iVar4 ); return; } void sub_15250(unknown uParam0, unknown uParam1, unknown uParam2) { int iVar5; iVar5 = 19; sub_860( iVar5, uParam0, uParam1, uParam2, "Contact_22" ); return; } void sub_15309() { int iVar2; int iVar3; int iVar4; iVar2 = 1; iVar3 = 0; iVar4 = 0; sub_770(); sub_15338( iVar2, iVar3, iVar4 ); return; } void sub_15338(unknown uParam0, unknown uParam1, unknown uParam2) { int iVar5; iVar5 = 20; sub_860( iVar5, uParam0, uParam1, uParam2, "Contact_24" ); return; } void sub_15397() { int iVar2; int iVar3; int iVar4; iVar2 = 1; iVar3 = 0; iVar4 = 0; sub_770(); sub_15426( iVar2, iVar3, iVar4 ); return; } void sub_15426(unknown uParam0, unknown uParam1, unknown uParam2) { int iVar5; iVar5 = 21; sub_860( iVar5, uParam0, uParam1, uParam2, "Contact_25" ); return; } void sub_15485() { int iVar2; int iVar3; int iVar4; iVar2 = 1; iVar3 = 0; iVar4 = 0; sub_770(); sub_15514( iVar2, iVar3, iVar4 ); return; } void sub_15514(unknown uParam0, unknown uParam1, unknown uParam2) { int iVar5; iVar5 = 22; sub_860( iVar5, uParam0, uParam1, uParam2, "Girl_26" ); return; } void sub_15605() { TERMINATE_THIS_SCRIPT(); return; } void sub_15652() { PRINTSTRING( "+++++++ PLACEHOLDER FAILED (strand " ); PRINTINT( l_U490 + 1 ); PRINTSTRING( ")\n" ); sub_15605(); return; }
placeholder.sco in scripts.img contains a placeholder script that may have been used for testing missions.
Unused Code
This file has a commented option that could be present in the menu, which is related to strafe mode.
<!--optionspc action="MENUOPT_ADJUST" label="MO_STRAFE" value="PREF_STRAFE" scaler="2" displayValue="MENU_DISPLAY_ON_OFF"/-->
This option is in the section with controls, restoring it back to the game does nothing, the option works but has no effect, the strafe mode is still works only when the player aims at pedestrians with fists or from a weapon, probably this option was supposed to turn on the strafe mode regardless of whether the player is aiming or not.
hud.dat
hud.dat has a couple of commented out and therefore unused by the game lines. According to this comment from the developer, which is in the same file, these lines were related to debug content.
# items that have ';' at the start of their names are DEBUG items [HD] ;HUD_DEV_KEYBOARD_MODE 0.069,0.052 0.3,0.3 HUD_COLOUR_WHITE 255 ;HUD_DEV_MISSION_DESC 0.900,0.106 0.327,0.368 HUD_COLOUR_WHITE 255 [CRT] ;HUD_DEV_KEYBOARD_MODE 0.069,0.052 0.3,0.3 HUD_COLOUR_WHITE 255 ;HUD_DEV_MISSION_DESC 0.500,0.106 0.327,0.368 HUD_COLOUR_WHITE 255
Since there is no debug menu in IV, all these lines do is distort the current game HUD after re-enabling them back, but they distort in different ways, if re-enable one of the lines, the HUD elements will look like this:
Before | After |
---|---|
and if restore the second line, the HUD elements will look even worse
Before | After |
---|---|
procedural.dat
This is a file that is responsible for random generation of props on the streets, interiors, water, etc. from procobj.img and it has some commented out content.
Here is an example with one of the commented out props from this file
EXT_MEADOW_PLANTS CJ_PROC_PLANT_14 4.0 1.0 0 360 1.0 1.0 1.0 1.0 0.0 0.0 0 0 0 0 EXT_MEADOW_PLANTS CJ_PROC_PLANT_12 4.2 1.0 0 360 1.0 1.0 1.0 1.0 0.0 0.0 0 0 0 0 # EXT_MEADOW_PLANTS CJ_PROC_PLANT_8 5.0 1.0 0 360 1.0 1.0 1.0 1.0 0.0 0.0 0 0 0 0
The last line has # before the group name, this disables the use of the CJ_PROC_PLANT_8 prop by this group, this is what the model of this prop looks like
and this is what it looks like after being restored in the game
Before | After |
---|---|
#EXT_FLOWERBED_PLANTS SM_PLANT1 2.5 1.5 0 360 1.0 1.0 1.0 1.0 -0.2 0.0 0 0 0 0 EXT_FLOWERBED_PLANTS CJ_PROC_PLANT_24 2.0 1.5 0 360 1.0 1.0 1.0 1.0 -0.2 0.0 0 0 0 0 EXT_FLOWERBED_PLANTS SM_PLANT3 2.5 1.5 0 360 1.0 1.0 1.0 1.0 -0.2 0.0 0 0 0 0 EXT_FLOWERBED_PLANTS CJ_PROC_PLANT_20 2.0 1.2 0 360 1.0 0.5 0.8 0.8 0.0 0.0 0 0 0 0 EXT_FLOWERBED_PLANTS CJ_PROC_PLANT_23 2.0 1.2 0 360 1.0 0.5 0.8 0.8 0.0 0.0 0 0 0 0 #EXT_FLOWERBED_PLANTS CJ_PROC_BRICK10 2.0 1.5 0 360 1.0 1.0 1.0 1.0 -0.2 0.0 0 0 0 0 #EXT_FLOWERBED_PLANTS CJ_PROC_BRICK7 2.0 1.5 0 360 1.0 1.0 1.0 1.0 0.0 0.0 0 0 0 0
Before | After |
---|---|
# EXT_PAVINGSLABS_DEBRIS CJ_PROC_SLAB1 5.5 2.0 0 360 1.0 1.0 1.0 1.0 0.0 0.0 1 0 0 0 # EXT_PAVINGSLABS_DEBRIS CJ_PROC_SLAB2 5.5 2.0 0 360 1.0 1.0 1.0 1.0 0.0 0.0 0 0 0 0 # taken out for bug no. 30145
Before | After |
---|---|
PROC_WTR_FLOATING_SCUM CJ_LEAF_W 3.2 1.0 0 360 1.0 1.0 1.0 1.0 0.0 0.0 0 0 0 1 PROC_WTR_FLOATING_SCUM CJ_PROC_WOOD_W3 6.2 1.0 0 360 1.0 1.0 1.0 1.0 0.0 0.0 0 0 0 1 PROC_WTR_FLOATING_SCUM CJ_PROC_BEER_W 8.0 1.0 0 360 1.0 1.0 1.0 1.0 0.0 0.0 0 0 0 1 PROC_WTR_FLOATING_SCUM CJ_PROC_FAGP_W 5.2 1.0 0 360 1.0 1.0 1.0 1.0 0.0 0.0 0 0 0 1 # PROC_WTR_FLOATING_SCUM CJ_RUB_W 6.0 1.0 0 360 1.0 1.0 1.0 1.0 0.0 0.0 0 0 0 1
Before | After |
---|---|