Published on February 19th, 2018, 03:04 AM | Article

Image

Red County Roleplay
SA-MP Gamemode
Version 3.0

 
Introduction
Wait, what? You mean... 2.6, right? I AM SO CONFUSED! WHERE IS MY 2.6?!

You heard it right — Welcome to Red County Roleplay Version 3.0! With 116 lines of changelog, this is, by far, the largest gamemode update to ever come on the server. It overtakes Version 2.4's 78 lines; Version 2.2's 72 lines; and Version 2.1's 70 lines. Version 3.0 features a handful of new features, with the most-anticipated drug system being the main highlight of this update.

As anticipated, the server pushes the latest SA-MP update to its potential with the implementation of 132 customized models, 74 being pedestrian skin models.
 
Image
Introduction | SA-MP 0.3.DL | Character Selection Screen | Drug System | Rockshore Town | Customized Models
 
Changelog
Bug Fixes
  • Corrected some issues where the gamemode couldn't always detect players as frozen.
  • Fixed a bug where /buyweaponskill didn't work in the new Blueberry Ammunation map.
  • Fixed a bug where /enter could be used on locked truck trailers.
  • Fixed a bug where /getstock could be used twice, bugging the player's stock delivery entirely.
  • Fixed a bug where /lock could potentially not work on house/business/motel ID 0.
  • Fixed a bug where /refuel could be used multiple times, breaking the system entirely.
  • Fixed a bug where any new clothing item purchased would be saved as a faction mask, causing players to lose items when fired from a faction that didn't have restricted items.
  • Fixed a bug where duplicating exterior furniture wouldn't save textures properly.
  • Fixed a bug where duplicating vehicle attachments wouldn't charge the player money.
  • Fixed a bug where house audio streams wouldn't play if a player entered the house via custom garage.
  • Fixed a bug where invalid values could be passed through /walkstyle.
  • Fixed a bug where payphone calls would display your contact name if a player someone was calling had their real phone added as a contact.
  • Fixed a bug where pickups not linked to houses, businesses and etc would cause [OUTSIDE] shout messages to send multiple times.
  • Fixed a bug where pool cues couldn't be purchased.
  • Fixed a bug where revoking someone's furniture permission would give the wrong house name.
  • Fixed a bug where shooting all of a gun's ammo could trigger false anticheat warnings.
  • Fixed a bug where text labels would reappear when a player had /nametags toggled.
  • Fixed a bug where the /toghmsg messages were inverted.
  • Fixed a bug where the HP display would show again even if it was toggled while a player respawned.
  • Fixed a bug where the ingame clock textdraw would display when toggled when a player respawned.
  • Fixed a bug where the MDC could be used on pushbikes.
  • Fixed a bug where vehicle attachments would disappear every hour when the optimized object stream distance check executed.
  • Fixed a bug where visible object limits wouldn't reset properly when exiting interiors by vehicle.
  • Fixed a bug where weapons refunded as faction weapons wouldn't save ID of the admin who spawned it.
  • Fixed a bug where zone detection in Blueberry wasn't very accurate, causing location checks to say "Red County" instead of "Blueberry"
  • Fixed a handful of dialog navigation issues with the MDC.
  • Fixed a handful of issues with the achievement system and refactored its code.
  • Fixed an exploit where walk styles could be used to rapidly shoot weapons and reset bullet spread patterns.
  • Fixed an issue where furniture commands still referenced the old exterior furniture commands.
  • Fixed an issue where selling a house would reset a players spawn even when it wasn't the house they spawned at.
  • Fixed an issue where the Silver Trading property lists would display the option for a second page when there wasn't actually another page.
 
New Features
  • Added a new scripted town to the server. This town is called Rockshore and can be found in the Rockshore East & West location. A new townhall, hospital, motel, docks, boat dealership, gas station, over 150 houses, a handful of new businesses and much more has been added with the town.
  • A notification will now appear on player screens when they are warned by administrators.
  • A separate, slightly faster timer has been created for the ingame clock. The time will now fluctuate gradually during the server's uptime, hopefully ensuring players from all timezones can enjoy proper day/night cycles.
  • Achievements will no longer show dialog boxes when unlocked. Instead, a sleek textdraw menu will be shown to the player.
  • Added /alignrb for the roadblock system which will allow government factions to perfectly align roadblocks.
  • Added /aligntag for the graffiti system which will allow players to perfectly align their tags.
  • Added /housefrisk and /bizzfrisk so players can search the homes of others without the need to actually use /sell. These frisk requests need to be accepted by the home owner.
  • Added /lastram for admins which will enable them to view the last player that successfully used /ram on a house or business.
  • Added /searchcommand. This command will allow players to search for command names based on their input. (note: admin commands won't show up, nice try though)
  • Added a /tog command which will display an interactive dialog which contains every toggleable option on the server.
  • Added a forced reload animation whenever a taser is fired.
  • Added a new interior to the Palomino Creek Repair Garage.
  • Added a small handful of new pre-defined interiors for businesses.
  • Added improved zone detection in Red County. Areas such as Highway 46, Highway 48 and etc will now display instead of "Red County". This will be expanded upon in future versions.
  • Added in custom clothing items ranging from new glasses, SACSO rank patches and body cameras.
  • Added a large handful of custom player models for everyone to use.
  • Added a new heavy vehicle dealership located in Fort Carson which adds the following vehicles to the server: Pony, Mule, Mr Whoopee, Rumpo, Yankee, Top Fun, Boxville, Boxburg, Benson, Cement Truck, Utility Van, Hot Dog
  • Added crack cocaine to the server. This drug will be created in homes by mixing distilled water, baking soda and cocaine.
  • Added the drug heroin to the server. Heroin can only be created by official illegal factions granted permission to distribute the drug.
  • All Pay n Spray blocks have been replaced with appropriate models rather than out of place looking gates.
  • House furniture will now automatically destroy itself when houses are unoccupied for a certain amount of time. They will be re-created when a house is entered. This will drastically reduce the amount of total streamed objects on the server, which should result in better performance.
  • House interior changes are now entirely handled ingame. /requestinterior will be used to create interior requests which will be confirmed or denied by Silver Trading administrators.
  • NOS logic has been reworked entirely. It can now be activated by holding down LMB and will be deactivated upon releasing the key. The amount of NOS left in the bottle will now display as a HUD element and can be refilled by mechanics.
  • Overhauled the server's HUD with a handful of new, custom icons.
  • Shrooms will now grow randomly in the forest regions of Flint County. These drugs can be picked and consumed and will produce differing effects based on randomly decided strength of the drugs.
  • Peyote has been added to the server. It behaves similar to shrooms, but does not have a strength modifier due to the nature of the drug. Peyote can be found randomly generated in different areas of Bone County.
  • Re-added (and refactored) the old real estate agency script, with a few adjustments. Players will be able to quickly sell and buy homes at the Montgomery Silver Trading office as a result.
  • Rewrote the cocaine system from the ground up. Cocaine may now only be purchased by select official factions and has addiction properties.
  • Storing items and viewing an inventory will now use the model selection textdraw system.
  • The character selection menu has been updated with a much better design.
  • The inventory system has been completely rewritten. Any item can now be stored in homes, businesses, and vehicles. They can also be traded between players and etc.
  • The map for the Red County/Bone County toll booth has been updated.
  • Weapons purchased by weapon license holders at Ammunations will now store a serial which can be used by law enforcement to obtain information related to the weapon's owner and their license status (/inspectgun). All existing licensed weapons have been assigned a serial and any legal weapon not in possession by its license holder has been changed to an illegal weapon.
 
Adjustments/Changes
  • /enter will now tell players if they're not near anything that can be entered instead of simply doing nothing.
  • /mask will now unmask masked players. /unmask has been removed.
  • /pickupitem has been removed and replaced with a key action. By default, players will need to use the 'left alt' key to pick up items now.
  • /togb will no longer ignore messages from duty administrators.
  • /toghpdisplay has been renamed to /toghud.
  • 12/24 hour time prefences with /showtime will now save.
  • Accents have been removed.
  • Admin spawned objects will now save across server restarts. The limit of object has been increased to 250.
  • All pickups now have consistent and also lowered stream distance. Players must now be within 10 meters for pickups to stream in.
  • All scripted fires will now have a small 3D text label created at their center to help aid FD members in aiming at the correct position. (these offsets have been known to be tricky in select circumstances)
  • Animations can no longer be used while a player is falling.
  • Any ATM object created will now automatically be made into a scripted ATM.
  • Baseball bats are now have forced holster visibility and cannot be concealed.
  • Boomboxes and campfires can no longer be placed in prison.
  • Donator vehicles may no longer be changed while they are damaged.
  • Entering a radio stream directly as a paramater of /carmusic, /housemusic and /bizzmusic will now play the radio stream like it did in previous versions.
  • Exiting the ATM dialog will now cancel its animation.
  • Faction related data such as spawns, skinks and ranks are now handled differently internally. This change will make it easier to increase max faction ranks, spawns or skins in the future if the need arises.
  • Furniture labels are now linked to objects themselves rather than furniture data.
  • Furniture labels positions will now update with objects. They will also be created and deleted automatically when furniture is placed or put away.
  • Houses can now be created inside of any interior which will allow for proper indoor apartment complexes and etc.
  • Large object models such as buildings will now be visible from a much greater distance.
  • Locked achievements will also show up on /achievements again.
  • Made many refactors to the SMS history code. This should fix the issue where players with too many previous texts couldn't view them.
  • Model selection menus should be far more efficient now.
  • Phones can now be recharged in motel rooms.
  • Player jobs will no longer be removed when being fired from factions.
  • Player zones will now show when in vehicles if a player has a GPS.
  • Players can now fish anywhere provided they are standing near water.
  • Players can now hold 10 sets of clothing (skins) rather than 5.
  • Players may now purchases an unlimited amount of water bottles from general stores.
  • Players will now always be frozen temporarily when being teleported, rather than only being frozen when going into an interior.
  • Police/FD items have been relocated from clothing stores to designated positions tied to their respective faction HQs and can now be purchased through the /gear command.
  • Raised the furniture cap to 2,000. New furniture limits are now: non-donator 500 level 1 750 level 2 1,000 level 3 1,500 level 4 2,000
  • Refactored lots of internal structures related to vehicle data. This should make the vehicle system in general a bit more efficient and also make it easier to adapt features to work for both personal and faction cars.
  • Refueling a vehicle will now ask for the fuel type as a command parameter rather than being a dialog option. This should reduce the amount of vehicles broken by accidental ESC presses.
  • Removed the silly /endtest feature at the end of driver license exams
  • Removed weapon storage limits from houses and businesses.
  • SACSO's /speed will now show a vehicle's license plate when used if the user is inside of a police vehicle with an MDC.
  • Tasers will now be automatically put away when every round is shot.
  • The /createfire command will now automatically adjust it's rank requirement for the FD based upon the current leader rank.
  • The /describe command will now only display descriptions to the command user. Other adjustments to distance checks and etc have also been made.
  • The base damage of the MP5 has been raised to 50.
  • The boat dealership, refuel and repair locations have been moved to the new town, Rockshore.
  • The character selection menu has been lowered towards the center of the screen.
  • The distance limit has been removed from the furniture nudge feature.
  • The exterior furniture limit of homes has been modified. This limit can now be changed per house, peaks out at 50 furniture items and must be set by ST admins with appropriate reasoning.
  • The KMH option has been removed from the speedometer to ensure consistency.
  • The radius of the Coalmine job checkpoints have been doubled.
  • The weed growing script now uses 7 different custom plant objects to visually demonstrate plant growth. All existing weed plant data has been wiped.
  • Unplaced furniture items will now be checked when using the duplicate feature.
  • Weapons can now be transferred between players while inside of vehicles.
Introduction | SA-MP 0.3.DL | Character Selection Screen | Drug System | Rockshore Town | Customized Models

SA-MP 0.3.DLRC-RP Version 3.0 comes with San Andreas Multiplayer's latest branch release — SA-MP 0.3.DL. You will need to update your SA-MP client with said version in order to connect to the server.

0.3.DL features a major game-changing update to San Andreas Multiplayer, with serverside model importing being the main highlight of this update. It carries all the features implemented during the development of the now-defunct SA-MP 0.3.8 (RC1 to RC4-4). Refer to the spoiler below for a detailed changelog, or see here.
 
Spoiler: hide
Bear in mind that while it shows SA-MP 0.3.8, all these features were imported on the 0.3.DL branch.
 
Kalcor wrote:
Image


SA-MP 0.3.8 RC

The 0.3.8 version of SA-MP will feature server-side custom models. Right now custom objects and custom player skins are supported, with more types planned for the future. Since this feature potentially has a large scope for some servers, 0.3.8 is being placed in to RC early. This gives server owners plenty of time to plan. These new features will take some time to formalise, so be please be patient with the release.

Although there are several new security features related to custom models, these are not yet enabled in the current build. Only use the RC version with people you trust as there could be unknown security flaws in GTA:SA's model formats.

How custom models work in SA-MP

Custom models are stored with the SA-MP server, usually in the 'models' folder. When a player connects, they are given a list of all models used by the server. Players will download models as required and store them by CRC in a 'cache' folder. Every server the player connects to has a seperate model cache. The local cache is located under: Documents\GTA San Andreas User Files\SAMP\cache followed by the server's IP.Port.

For custom player skins, the player will download all of these at the start of the game, since the game can't be paused to load skins. For objects attached to the player like accessories, these must be downloaded at the start also. For world objects, these will be downloaded depending what virtual world they are in. That means it's possible to have custom worlds that the player would not have to download until they entered the virtual world.

Model format

The skin format is the same as the game's normal format. Object models require a collision attached to the dff, and this collision has to be attached using the kdff tool.

The main modeling tools for GTA:SA are written for 3dsmax, although there are some other tools available for blender. I have made a short blender export tutorial available here.

Defining custom models in the artconfig.txt file

Custom models are currently defined in the server's artconfig.txt file. The line AddCharModel is used to add a new player model, and AddSimpleModel is used to define a custom object, which includes both world objects and objects that will be attached to players as accessories.
 
Kalcor wrote:Player skins use ranges: 20000 to 30000 (10000 slots)
Objects use negative IDs: -1000 to -30000 (29000 slots)


Other fixes since 0.3.7

- The radar outline should now scale properly in widescreen resolutions.
- A bug introduced to PlayerPlaySound with sound ID 0 should be fixed.
- Actors should now be able to rotate again.
 
SA-MP 0.3.8 RC2: hide
Kalcor wrote:Updates:

SA-MP 0.3.8 RC2 Client/Server update

- MAX_OBJECTS increased to 2000.
- Fixes sniper hud was not drawing correctly.
- In RC1, SelectObject was showing debug collision information and would crash if the information was unavailable.
- Fixes invalid ped model crash that effected some 0.3.8 RC1 players
- Adds 'local' cache concept to avoid having to download large numbers of models in game. This feature is not finalized. More on this later.
- In RC1, streaming might have been broken if you teleported from one vworld in to the same vworld.

- Adds support for timed objects in custom models.
- AddCharModel/AddSimpleModel can now be called from pawn. There are currently no restrictions on when you can call these functions, but be aware that if you do not call them inside OnFilterScriptInit/OnGameModeInit, you run the risk that some players, who are already on the server, may not have downloaded the models.
 
Code: Select allnative AddCharModel(baseid, newid, dffname[], txdname[]);
native AddSimpleModel(virtualworld, baseid, newid, dffname[], txdname[]);
native AddSimpleModelTimed(virtualworld, baseid, newid, dffname[], txdname[], timeon, timeoff);
 
SA-MP 0.3.8 RC3: hide
Kalcor wrote:SA-MP 0.3.8 RC3 Client/Server update

- Adds the first layer of security checks for model/texture file downloads. More security features will be added as the 0.3.8 RC period progresses. For now, only join servers where you trust the server owner.
- You can now change the location of the model cache folder using the Tools > Settings menu in the SA-MP server browser.
- Objects created from models downloaded from the server are now freed from memory after they are deleted.
- Adds data compression to file downloads. Note: Downloads with thousands of small files can still be slow.
 
SA-MP 0.3.8 RC3-1 (Client): hide
Kalcor wrote:SA-MP 0.3.8 RC3-1 Client update

- The dff reader couldn't read the Skin extension on some skins.
 
SA-MP 0.3.8 RC3-2 (Client): hide
Kalcor wrote:SA-MP 0.3.8 RC3-2 Client update

- The custom model unloading code added in RC3 is causing crashes for some people and has been disabled for now.
 
SA-MP 0.3.8 RC3-3 (Client): hide
Kalcor wrote:SA-MP 0.3.8 RC3-3 Client update

- More dff/txd validation.
 
SA-MP 0.3.8 RC3-4 (Client): hide
Kalcor wrote:SA-MP 0.3.8 RC3-4 Client update

- "FreeTXDs" was removed from the F5 screen as it was crashing some players.
 
SA-MP 0.3.8 RC4: hide
Kalcor wrote:SA-MP 0.3.8 RC4 Client/Server update

- Adds support for URL redirection for model/texture downloads, which means you can host downloads on a web server instead of sending them through the SA-MP server. Client URL downloading is done via libcurl version 7.57.0 compiled with support for http, https, and zlib (gzip).
- If you require a proxy server to download over http, a proxy address can be entered in the Tools > Settings dialog of the SA-MP server browser.
- Adds various pawn functions to deal with download redirection. See the dl_redirect.pwn filterscript for more information.
- Adds GetPlayerCustomSkin() function.
When SetPlayerSkin is used to set a custom skin (downloaded from the server), GetPlayerSkin returns the base skin (from the game), not the custom skin ID. Instead you must use GetPlayerCustomSkin to get the custom skin ID. The SA-MP client and server assume that downloads could fail, or that custom models may fail to load, in which case the base skin used in AddCharModel() is still the main skin.
 
Code: Select allforward OnPlayerRequestDownload(playerid, type, crc); // called when the player requests a download
 
Code: Select allnative FindModelFileNameFromCRC(crc, retstr[], retstr_size);
native FindTextureFileNameFromCRC(crc, retstr[], retstr_size);
native RedirectDownload(playerid, url[]);
 
Code: Select allnative GetPlayerCustomSkin(playerid);
 
SA-MP 0.3.8 RC4-1: hide
Kalcor wrote:SA-MP 0.3.8 RC4-1 Client/Server update (optional)

- Client will show a HTTP error instead of 'bad checksum' when downloading from a broken URL.
- Fixes server bug: If RedirectDownload() was called along with script returning 1 in OnPlayerRequestDownload, the client would not know which download method to use.
- When SetSpawnInfo is used with a custom skin, the custom skin won't be reset to 0.
 
SA-MP 0.3.8 RC4-2 (Client): hide
Kalcor wrote:SA-MP 0.3.8 RC4-2 Client update

- When loading a '2D Effect' from downloaded model, the client will only load lights and escalators. All the game's particles are already available in SA-MP as seperate objects.
 
SA-MP 0.3.8 RC4-3 (Client): hide
Kalcor wrote:SA-MP 0.3.8 RC4-3 Client update (optional)

- Actors won't do the 'hands up' action when aimed at.
- Limits the game timer some more to fix camera interpolation bugs, although increases the risk of a timer wrap.
- You should be able to use downloaded txds as textdraw sprites using the tag mdl-ID:texturename. Where '-ID' is a model added with AddSimpleModel.
The textdraw system is likely to be upgraded in future RCs, having features similar to MaterialText, so I'd recommend against using downloaded textures for text messages.
- Max client sprite slots increased from 100 to 200.
- More txd validation. The client will not accept textures with a width or height > 2048 pixels.
- Vehicle exiting should work properly on server created objects.
 
SA-MP 0.3.8 RC4-4 (Client): hide
Kalcor wrote:SA-MP 0.3.8 RC4-4 Client update (optional)

- The RC4-4 client is the same as RC4-3, although removes the "Server timer wrapped" message which was being triggered incorrectly. After some testing, I found there were no ill effects in game from the timer wrapping.
 
Source: SA-MP Forums
 
You can download SA-MP 0.3.DL-R1 client here.
Introduction | SA-MP 0.3.DL | Character Selection Screen | Drug System | Rockshore Town | Customized Models

Character Selection Screen
Image
Introduction | SA-MP 0.3.DL | Character Selection Screen | Drug System | Rockshore Town | Customized Models

Drug System
Image

Image
Introduction | SA-MP 0.3.DL | Character Selection Screen | Drug System | Rockshore Town | Customized Models

Rockshore Town
Introduction | SA-MP 0.3.DL | Character Selection Screen | Drug System | Rockshore Town | Customized Models

Customized Models
Introduction | SA-MP 0.3.DL | Character Selection Screen | Drug System | Rockshore Town | Customized Models