the cutting room mirror

Bully (PlayStation 2)

This article has a talk page!
view on tcrf.net

Bully is a rushed surprise release from Rockstar Games that changes up the usual violent setting of their open-world games and puts players in a rather relatable high school setting where Jimmy Hopkins stands up to abusers, gets in ego-driven conflicts, and causes some mischief while also struggling against the developers who are trying to limit his speech.

It received a remaster in 2008 featuring extra content called Bully: Scholarship Edition, for Xbox 360, Wii, and PC.

Resources#

Scripted Content#

Missions#

Unused Scripts#

3_03.lur

Watch on YouTubeThe script for the scrapped mission Rendezvous.

As shown by its ID, it was going to become available in Chapter III after Bait (3_02).

It involved Jimmy helping Lola protect Tad from some greasers while they both tried to get along with each other. Despite getting cut, Lola still mentions in the intro cutscene of The Rumble that Tad is one of the boys fighting for her.

The script is really unpolished and makes no use of any of the remaining quotes in the files.

3_07.lur

The script for a scrapped Christmas mission for Chapter III.

It spawns Jimmy where his room on the removed second floor of the boys' dorm used to be, and Justin, Pedro, and Trevor on the first floor. It makes them start conversing once Jimmy gets near where the stairs used to be.

Like 3_03.lur, the script is unpolished. It doesn't use any of the remaining quotes and will crash the game as it tries to load a splash screen texture that was deleted.

Unused Missions#

Valid IDs that are registered within the game and therefore can be launched, but have no leftovers to do so properly.

Mission ID

Notes

Post_1_03

chap1.act calls it Post1.03_Respect Tutorial Mission.
Its post1_03.lur script is missing.
The ID indicates it would start after The Setup.

Scrapped Missions#

Unique IDs mentioned by various leftover files that aren't registered at all.

Mission ID

Notes

1_R01

Unknown. The ID indicates a replayable mission for Chapter I.

2_SS01

Unknown. The ID doesn't follow any known pattern.

2_S07

Chapter II side mission that would later partially reappear on Scholarship Edition as Small Offences.

2_R04

Chapter II replayable mission whose few leftover files (2_R04.lur) show it was meant to be a firefighter job.

3_03

Refers to Rendezvous described above.

3_07

Refers to the Christmas mission described above.

3_R05

One of its few leftovers (3_R05ChemicalDeliv.agr), shows it was meant for a mission called Chemical Deliveries.
It would later reappear in Scholarship Edition as Discreet Deliveries.
The ID indicates it might've been planned as a replayable mission earlier in development.

3_S08

Chapter III side mission that would later reappear in Scholarship Edition as Mailbox Armageddon.
In Scholarship Edition it becomes available on Chapter V instead.

3_R07

It would later reappear in Scholarship Edition as The Collector.
Just like 3_S08, it was moved to Chapter V in Scholarship Edition.
The ID indicates it might've been planned as a replayable mission earlier in development.

3_R10

Unknown.

3_RM01

Unknown. The ID doesn't follow any known pattern, but is related to Challenges.

4_S11

It was meant for a scrapped mission called The Paddle.

Minigames#

Unused Scripts#

GraffitiCleanup.lur Watch on YouTube

An incomplete script for Graffiti Clean-up, a scrapped punishment minigame. It seems to be pretty unpolished, as the player isn't even given control.
Even then, with the absence of the removed Brush and the graffiti to clean, this would still be impossible to complete.

Replacing the Snow Shoveling minigame's script is the only way to properly launch this, as they share the same data that determines which difficulty to set.
It's possible that Snow Shoveling was scripted on top of the remnants of this.

  • If Jimmy has been busted once, he and Seth will spawn at the school.
  • If Jimmy has been busted twice, he and Pirate Vance will spawn in Bullworth Town.
  • If Jimmy has been busted thrice, he and Pirate Vance will spawn in New Coventry.

Pirate Vance is likely not the intended ped meant for the script, his ID probably belonged to someone else earlier in development.

This script, unlike Lawn Mowing and Snow Shoveling, uses MS_PunishmentDetention for its background music, instead of MS_CarnivalFunhouseMiner.

Unused Minigames#

Valid IDs that are registered within the game and therefore can be launched, but have no leftovers to do so properly.

Minigame ID

Notes

AG_SO

Minigames.cat calls it ARCADE - Desert Fighter.

LunarLander

Minigames.cat calls it ARCADE - Lunar Lander.

MGGandG

Minigames.cat calls it ARCADE - Grottos and Gremlins. This one in particular was mentioned in an EGM interview.

MGNuclearRain

Minigames.cat calls it ARCADE - Nuclear Rain.

Scrapped Minigames#

Unique IDs mentioned by various leftover files that aren't registered at all.

Minigame ID

Notes

GarbagePunishment

Unknown.

Unused Content#

Wrestling Class

Wrestling was originally its own class, having 5 lessons like all the others, but only its first two are used as part of Gym Class (1 and 3, respectively), as the others launch Dodgeball sessions.
Wrestling1.lur still contains code for the remaining 3 Wrestling lessons, and can be launched with the same logic as Prep Challenge.

  • The third lesson is playable by forcing the script's parameter to be 3. The player fights against the scrapped student Bob and is tasked with reversing three grapples of his, then defeating him.
    Evidently, Jimmy wasn't going to have the ability to do Reversals since the beginning of the game.
  • The fourth lesson is playable by forcing the script's parameter to be 4. The player fights against Bob and is tasked with defeating him.
  • The fifth lesson is playable by forcing the script's parameter to be 5. Same as the former, but against Luis.
  • The sixth lesson (aka repeating class 5) is playable by forcing the script's parameter to be 6 or higher. It's the same as the fifth but Luis' health is slightly increased.

Wrestling 3

Wrestling 4

Wrestling 5

Watch on YouTube

Watch on YouTube

Watch on YouTube

Additional information:

  • The script for the third lesson seems to be incomplete since the player automatically passes if the timer runs out. Bob is scripted not to play the "knocked out" animation when completing it.
  • In the fifth lesson, the intro features a unique camera angle that focuses on Luis as he plays some animations. The camera, however, is a bit too close to him.

(Source: deadpoolXYZ (Discovery))

Watch on YouTube

The script is always checking if the player is inside the mat and if they're not, they're immediately reset back to the middle of the mat, among other things.
One such thing is a 13-second countdown after one second has passed since leaving it, which is impossible due to the aforementioned reset.
This will be displayed on-screen, along with a warning, once only 10 seconds are left. The class is failed once the countdown reaches 0.

Persistently trying to leave via modding allows seeing this code in action, thanks to the resetting function taking some time to execute completely.

C3.DAT contains:

  • A second spawn point for the player.
  • A second spawn point for the opponent.
  • A spawn point for Mr. Burton.

Art Class Watch on YouTube

The unused Reversal power-up still mentioned in the instructions under the name Brush.
It reverses the player's directional input for a few seconds.
It never spawns as the script sets it with a spawn rate of 0.

C5.DAT contains:

  • A spawn point for Dr. Crabblesnitch.
  • Spawn points for jocks.

Boxing
Boxing.DAT contains:

  • A spawn point for a prep, possibly to start the minigame.
  • An eighth spawn point for the cheering crowd.

Keep-Ups
Watch on YouTube

The script for this minigame gets Jimmy's coordinates when starting it.
If he somehow happens to be near the coordinates meant for the minigame's unused second blip, in Old Bullworth Vale Gardens, it will take place there.

Every coordinate in the minigame with the exception of the camera has an equivalent of it meant for this location.
As the camera doesn't, and as such is still on the school campus, in the video here it is prevented from changing.

Unused Lua Content#

To do:
There's more.

Functions#

BikeAddAttachment

Unknown. Might have been related to the scrapped bike customization system.

BikeSetPadlock

When set to True for a bike, it freezes its state, which also makes the player unable to get on it, as if it was "locked".

LockFPS30

When set to False, it unlocks the framerate of the game.

Breaks some of the in-game Quick Time Events, making them much harder, and speeds up some scripted camera movements. This is technically used after the Boxing minigame, but is set to True, even though it's never set to False to begin with.

PedAttackCar

Makes a specified ped attack a specified car.

PedAttackNearestCar

Similar to the previous one, but doesn't seem to work.

Globals#

The game's util.lur script initialises the shared table, containing many variables for the game's various scripts to use when needed.
Some of these ended up unused and reference scrapped or altered content.

Variable

Initial Value

Notes

shared.gTeleport3R10

false

Unknown.

shared.gTeleport1R01

false

Unknown.

shared.gTeleport_3_R05

false

Unknown.

shared.gTeleport_2_R03

false

Unknown.

shared.gConversationOver_2_R03

false

Unknown.

shared.g3R10MissionState

0

Unknown.

shared.g3R10MissionHistory

0

Unknown.

shared.g3R07BikeID

-1

Unknown.

shared.gGarbagePickupStage

1

Unknown.

shared.gGoKartINTLevel

0

Unknown.

shared.g3_R05_Diff

1

Unknown.

shared.g3_R05_SuccessCount

0

Unknown.

shared.gBDormToilet

false

Unknown.

shared.gUniformLegs
shared.gUniformLegsTXD

"B_Pants4"

These suggest the Crisp Jeans used to be part of Jimmy's school uniform set, as opposed to the School Slacks (S_Pants1).

shared.gUniformFeet
shared.gUniformFeetTXD

"P_Boots2"

Same as above, but with Work Boots, as opposed to the Classic White Sneakers (P_Sneakers2).

Miscellaneous Unused Content#

Camera Presets#

Test

Watch on YouTubeAn unused camera preset for when riding vehicles.

The camera tends to follow Jimmy from the same perspective, rather than trying to always face his back.

WaterPuzzleCam

Watch on YouTubeAn unused camera preset for a top-down perspective meant to be used in Stronghold Assault.

It was scrapped due to a layout change in the map, which can be seen in the strategy guide.
The intended use goes unused in the also-unused Test_4_02.lur script added back in Scholarship Edition.

Chapter Seven#

Bully_ChapterSevenMenu.png

IDs 0-5 are all the used Chapter IDs. Higher values will reset the map to Fall and load Winter-only props as well, which is likely just the default behavior.
However, Switching to ID 6 reveals it was partially programmed, as:

  • The "available tasks" menu will display "CHAPTER SEVEN : SUMMER" as the current Chapter.

Timecycle and Weather#

The game has a full 24-hour time cycle, even though Jimmy normally passes out at 2 AM and wakes up at only 8 AM. As referenced by unused text, earlier in development Jimmy was supposed to stay up all night and do some odd jobs, much like the Grand Theft Auto games.

It can be seen via glitching, modding, or, alternatively, via the following codes that prevent you from passing out at 2 AM.

EUR

2020215C 10000029

JPN

2020225C 10000029

USA

20201C6C 10000029

Additionally, while not unused, the Hurricane weather can only be seen during the Snow Shoveling minigame in Chapter III, with snow. Its rainy variation is never seen.

(Codes: Edness)

Effects#

Watch on YouTubeEtherCloud

Unknown.
Probably related to mentions of ether in various unused quotes for Finding Johnny Vincent.

Watch on YouTubeFruitStand

Unknown.

Watch on YouTubeGraffitiGone

Unknown.
Possibly meant for the Graffiti Clean-up minigame.

Watch on YouTubeGraffitiRemoval

Unknown.
Possibly meant for the Graffiti Clean-up minigame.

Watch on YouTubeLawnmowerGrass

Unknown.
Possibly meant to be attached to the lawnmower while mowing grass, judging by the name.

Glow FX#

effects.dat in the game's Config folder contains Glow Effects settings for some of the Areas, but the following have their "ON" flag set to 0.
Setting them to 1 will enable them:

School_Hallways

Pool

Girls_Dorm

By the side windows, on each floor.
(Broken, as it turns off depending on the camera)

In both washrooms.

In the bathroom.

Additionally, there are settings meant for the scrapped Boys' Dorm's bathroom and the removed Island 3 Area.

Green Corona#

Bully_GreenCorona.png

ID 12 is an unused green version of the ground marker/corona.

This was likely meant for the Jobs, but those recycle the minigames' blue corona, instead.

Snowmen#

Bully_Snowman.png

The 14 snowmen that spawn at the beginning of Chapter III are listed along with the other collectibles in Collectibles.DAT as "_COLLECTIBLE_SNOWMAN".

They might have been meant to be destroyed for a reward.

Car Passenger(s)#

To do:
There might be more to this so expand on it.

Watch on YouTubePeds can enter a vehicle from the right side and be in a unique passenger state that is normally unused.

It doesn't seem possible for a ped to enter a car as a passenger if the driver is already in, but action nodes can be used to change the driver's state to passenger and have another ped get in as the driver.

All taxicab seats occupied.

Additionally, the game allows for up to two more peds located on the back seats, though they are located too close to each other.
Results vary depending on the vehicle.

(Source: derpy54320 - Back seat peds trivia)

Replayable Errands#

Scenarios.lur, the script which handles errands, sets a "repeatable" variable, for each errand, to false.
Changing it to true allows the errand to become available again whenever possible.

This implies the developers planned to create repeatable errands.

Stats Menu Scrolling#

Watch on YouTube

The Stats section of the menu is scripted via Lua and supports up to 7 more categories (before the game crashes).
Adding more than the current 5 will also display D-Pad icons corresponding to how you can scroll.

This is likely a shared logic across the whole menu, but no page has more than 5 categories to show it.

Christmas Ambience#

Several .DAT files responsible for setting ambience music to areas also account for a Christmas variation for Winter.
However, the default music is set to play in every season (PSFRW), including Winter, whereas the Christmas variation is set to play during "X", which doesn't seem to be valid.

Filename

Notes

SP_Barber.DAT

Would have played EX_XmasTreeEmitter03.rsm.

SP_Bike_Shop.DAT

Would have played EX_BikeShopMX.rsm.

SP_Comic_Shop_Rich.DAT

Would have played EX_ComicShopMX.rsm.

SP_GroceryStore.DAT

Would have played EX_GeneralStoreMX.rsm.

SP_Hair_Salon.DAT

Would have played EX_HairSaloonRichMX.rsm.

SP_Janitors_Room.DAT

Would have played EX_JanitorRoomMX.rsm.

SP_MainMap.DAT

Would have played EX_XmasTreeEmitter03.rsm near the speaker by the academy's entrance and the Christmas tree by the town hall
and EX_XmasTreeEmitter04.rsm near the Christmas tree in Old Bullworth Vale by the movie theater.

SP_Poor_Cloth.DAT

Would have played EX_ClothingStorePoorMX.rsm.

SP_Poor_Hair.DAT

Would have played EX_HairSalonPoorMX.rsm.

SP_Rich_Cloth.DAT

Would have played EX_ClothingStoreRichMX.rsm.

SP_Trailer.DAT

Would have played EX_TatooTrailerMX.rsm, even though Blue Skies Industrial Park isn't accessible during Chapter III.

Texture Oddities#

druglbl
BullySE-druglbl.png
This texture belongs to the medicine Jimmy gives to the hobo Handy during an Errand. While used, the text on it is not able to be seen clearly:

143933857-12x
QTY: 90
480MG
Methemphatamine

Take when unhappy, bored with life
Or just to fit in and be cool.

James Indago Refill 20 of 20

Dr. Wilbur Brunum
Refill after 10-15-2005

gamedude
Bully_NS00_gamedude.png There is an early screenshot displayed on the Game Boy knockoff in the Nerds' Hideout, albeit in a very low resolution. Details like a slightly earlier design of the Bullworth students and the old walking style can be seen here. Image has been enlarged for better visibility.

Regional Differences#

Europe#

The game in European regions is called Canis Canem Edit, so almost all instances of the game's title were changed to match.

Title Screen

US/JP

EU

Intro Screen

US/JP

EU

Loading Icons

US

EU/JP

The icons spell out "B-U-L-L-Y" in the US version, they were replaced with different variations of the Bullworth Academy shield in the European and Japanese versions.

Options

US

EU

An extra option to change language on the fly was added in the misc section of the Options menu. This did not carry over to Scholarship Edition.

Japan#

English Class

Watch on YouTubeOn the Japanese version, the player needs a much lower score (15% vs. 56%) to pass English class.

This was likely made to make it easier for players who have more limited knowledge of English.

Other Changes

This needs some investigation.
Discuss ideas and findings on the talk page.
Specifically: Different PAL/NTSC standards affect QTEs timing and other things as they're tied to the framerate. This needs more investigation. (Perhaps it better classifies as an oversight rather than a regional difference?)

Shop Class' bike wheel-turning Quick Time Events seem to have slightly better stick controls compared to the American and European versions of the game.

References#


  1. Bully website (archived)↩︎
  2. Bully JP website (archived)↩︎
  3. Canis Canem Edit website (archived)↩︎