Commit Graph

238 Commits

Author SHA1 Message Date
Lohikar
2a0353d8f9 Progress bar pref (#1938)
changes:

Players can now toggle progress bars on/off in Preferences.
This just adds another flag to the parallax toggles pref to keep things simple.
2017-03-19 11:39:23 +02:00
Lohikar
73c29bd5a7 Miscellaneous Fixes (#1868)
changes:

Engineering now actually gets engineering-type alert consoles instead of the non-functional base type.
Lighting is no longer broken by shuttles.
The ERT shuttle autoannouncer should no longer cause lighting runtimes.
Fixed some bad newlines in some character setup help texts.
Custom loadout tweaks now properly write to SQL.
Custom loadout is now saved as JSON.
Players are now shown a notice when the server was unable to load their custom loadout.
Drowsyness is now clamped to zero.
Added some new tips to the example.
Tweaked some tips' grammar.
Removed some tips that do not apply to our code base.
Probably fixes embraced vampire thralls not getting vampire verbs.
Fixes #1844.
Fixes #1835.
Probably fixes #1687.
Probably fixes #1824.
Fixes #1839
2017-03-05 15:14:28 +02:00
Lohikar
0cba68911d Lighting Overhaul & General process improvements (#1612)
This is it. The big one.
Risk: Very large. This modifies or rewrites several important systems.
Some things still need balancing, but that's probably better done if/when this hits dev.

changes:

New smooth lighting system.
Machinery split into three processes: machinery, powernet, pipenet Removed due to breakage. Refactored into multi-step process.
Mob process rewritten.
NanoUI process rewritten.
Objects process rewritten.
Tweaked color output of station lights.
Slime core lights now emit colored light.
Fixed light update frequency issue with fire alarms, hydroponics trays, and airlocks.
Increased light emission from bolted airlocks.
Miscellaneous performance improvements.
New datum pool implementation.
New lighting usage profiler.
Lighting system now tracks UV light, which is not visible to players.
Space now has a parallax effect.
Disabled Spin View verbs due to incompatibility with the new lighting system.
Disabled hallucination view spin due to incompatibility with the new lighting system.
Lighting system now initializes in the lobby before the round starts to reduce BoR deadtime.
Added UV light tracking to lighting engine; dionae now gain energy exclusively from UV light.
Added colored lighting to a few consoles that used default (white) light.
2017-01-29 01:13:54 +02:00
skull132
b5c9958ab7 Fixes no client passed to delete_character_sql() (#1570) 2017-01-14 20:57:28 +02:00
skull132
9d3556283e Fix #1490, #1495, #1430, #1425, #1472, plus spacelube (#1537)
Fixes #1490
Fixes #1495
Fixes runtimes from meteors.
Fixes #1430
Fixes #1425
Fxies #1472
Fixes spacelube not drying.
2017-01-12 23:07:46 +02:00
skull132
f0878244b9 Fix the thing (#1467) 2017-01-08 15:56:41 +02:00
skull132
a79808984e Fix Save ops order (#1367)
And fix field nulling if the database doesn't return anything.
2017-01-02 00:44:46 +02:00
LordFowl
bc8871ac2b Shells and Periphery (#1327)
Adds Shells. Adds tags. Adds IPC subspecies. Adds HK-47's. Does not add IPC construction.

Beyond the obvious review of shells, the exact stats of the IPC subspecies need review. They were largely an afterthought, and quickly overshadowed by the shell project.
2016-12-28 02:23:26 +02:00
skull132
22c43472ae More Merge Fixes (#1304)
* Fixes SQL saving of hex numbers
* Removes completed TODO-MERGE notes
* Changes one instance of Galactic Common to Ceti Basic
* Renames instances of blind.layer to blind.invisibility (as is proper)
* Fixes the SQL schema some more
* Implements pAI saving
2016-12-26 02:34:29 +02:00
LordFowl
93143a8e45 Vaurca Update Dec2016 (#1289)
Adds Vaurca subspecies and a whole slew of content related to them. Also, custom organs for them.
2016-12-25 01:11:09 +02:00
skull132
24258106da SQL Saves - Season 2 Episode 2 - The Fixening (#1286)
Update the schema
 Modify player_preferences and character related tables
 Readd the incidents + missing CCIAA tables to it
 Fix loading
 Fix saving
 Make it impossible to edit character name after a while
 Sanity check so you cannot enter without a valid (saved) character
 Fix New Character button
 Remove debug messages

Fixes #600 
Fixes #588
2016-12-25 00:56:36 +02:00
Alberyk
b247ba78a4 Adding socks (#1284)
The long waited sock update;

Socks are being added as another underwear like option, with some exclusive ones for females. Only humans (and squish) can have them atm.

Also, I am nearly sure this will work.
2016-12-24 04:28:43 +02:00
LordFowl
51bd200d7c Porting Apollo Infractions Computer (#1033)
Ports Apollo's infraction's system, creating a permanent criminal record for every character. Every minor or medium infraction accrued over the course of a round is added to the character's permanent security record which is available at vanilla records councils. Antagonists are automatically exempt from this process, and players can exercise control over what charges they consider canon or not.

Brigging a person is now dependent on the criminal sentencing computer, which reads a person's ID and applies a brig timer automatically for the charges selected. Personnel without ID's will have to be brigged manually.
2016-12-23 01:00:04 +02:00
skull132
0b26cd9ab1 Fix more things 2016-12-18 00:42:49 +02:00
skull132
ff7f93cbd8 Saving + Updating + ALL THE THINGS
Everything. Absoloutely positively everything. Fuck.

Hey, it compiles now, doe!
2016-12-11 21:44:35 +02:00
skull132
7925063160 SQL Saves - Sanitization
Everything is now proper good sanitized!
2016-12-10 19:48:00 +02:00
skull132
e9b688e1f6 Merge branch 'development-2' into development
Christ on a stick. SO MANY ERRORS. REEE.

# Conflicts:
#	baystation12.dme
#	code/_helpers/lists.dm
#	code/_helpers/logging.dm
#	code/_helpers/text.dm
#	code/_onclick/click.dm
#	code/controllers/configuration.dm
#	code/controllers/master_controller.dm
#	code/datums/supplypacks.dm
#	code/game/antagonist/antagonist.dm
#	code/game/antagonist/antagonist_print.dm
#	code/game/antagonist/outsider/commando.dm
#	code/game/antagonist/outsider/ninja.dm
#	code/game/area/areas.dm
#	code/game/gamemodes/cult/cult_items.dm
#	code/game/gamemodes/game_mode.dm
#	code/game/jobs/access.dm
#	code/game/machinery/atmoalter/canister.dm
#	code/game/machinery/autolathe.dm
#	code/game/machinery/doors/airlock.dm
#	code/game/machinery/recharger.dm
#	code/game/machinery/suit_storage_unit.dm
#	code/game/mecha/mech_fabricator.dm
#	code/game/mecha/mecha.dm
#	code/game/objects/effects/spiders.dm
#	code/game/objects/items.dm
#	code/game/objects/items/devices/PDA/PDA.dm
#	code/game/objects/items/devices/flash.dm
#	code/game/objects/items/devices/lightreplacer.dm
#	code/game/objects/items/devices/paicard.dm
#	code/game/objects/items/devices/scanners.dm
#	code/game/objects/items/devices/suit_cooling.dm
#	code/game/objects/items/devices/uplink.dm
#	code/game/objects/items/robot/robot_upgrades.dm
#	code/game/objects/items/toys.dm
#	code/game/objects/items/weapons/cards_ids.dm
#	code/game/objects/items/weapons/handcuffs.dm
#	code/game/objects/items/weapons/manuals.dm
#	code/game/objects/items/weapons/material/kitchen.dm
#	code/game/objects/items/weapons/material/misc.dm
#	code/game/objects/items/weapons/material/swords.dm
#	code/game/objects/items/weapons/melee/energy.dm
#	code/game/objects/items/weapons/melee/misc.dm
#	code/game/objects/items/weapons/scrolls.dm
#	code/game/objects/items/weapons/storage/belt.dm
#	code/game/objects/items/weapons/stunbaton.dm
#	code/game/objects/items/weapons/tools.dm
#	code/game/objects/objs.dm
#	code/game/objects/structures/crates_lockers/closets.dm
#	code/game/objects/structures/crates_lockers/closets/secure/security.dm
#	code/game/objects/structures/janicart.dm
#	code/game/sound.dm
#	code/game/turfs/simulated.dm
#	code/game/verbs/ooc.dm
#	code/global.dm
#	code/modules/admin/verbs/debug.dm
#	code/modules/admin/verbs/modifyvariables.dm
#	code/modules/client/client procs.dm
#	code/modules/client/preferences.dm
#	code/modules/clothing/clothing.dm
#	code/modules/clothing/head/hardhat.dm
#	code/modules/clothing/head/helmet.dm
#	code/modules/clothing/head/jobs.dm
#	code/modules/clothing/head/misc_special.dm
#	code/modules/clothing/shoes/jobs.dm
#	code/modules/clothing/spacesuits/alien.dm
#	code/modules/clothing/spacesuits/captain.dm
#	code/modules/clothing/spacesuits/miscellaneous.dm
#	code/modules/clothing/spacesuits/rig/rig_pieces.dm
#	code/modules/clothing/spacesuits/rig/suits/alien.dm
#	code/modules/clothing/spacesuits/spacesuits.dm
#	code/modules/clothing/spacesuits/void/merc.dm
#	code/modules/clothing/spacesuits/void/void.dm
#	code/modules/clothing/suits/armor.dm
#	code/modules/clothing/suits/jobs.dm
#	code/modules/clothing/suits/storage.dm
#	code/modules/clothing/suits/utility.dm
#	code/modules/clothing/suits/wiz_robe.dm
#	code/modules/clothing/under/jobs/security.dm
#	code/modules/economy/Events.dm
#	code/modules/economy/Events_Mundane.dm
#	code/modules/economy/economy_misc.dm
#	code/modules/events/blob.dm
#	code/modules/events/event.dm
#	code/modules/events/event_container.dm
#	code/modules/events/event_manager.dm
#	code/modules/events/money_lotto.dm
#	code/modules/events/prison_break.dm
#	code/modules/events/spacevine.dm
#	code/modules/hydroponics/trays/tray.dm
#	code/modules/mob/dead/observer/observer.dm
#	code/modules/mob/emote.dm
#	code/modules/mob/holder.dm
#	code/modules/mob/language/station.dm
#	code/modules/mob/living/bot/cleanbot.dm
#	code/modules/mob/living/carbon/alien/diona/diona.dm
#	code/modules/mob/living/carbon/alien/diona/diona_attacks.dm
#	code/modules/mob/living/carbon/give.dm
#	code/modules/mob/living/carbon/human/emote.dm
#	code/modules/mob/living/carbon/human/human.dm
#	code/modules/mob/living/carbon/human/human_defense.dm
#	code/modules/mob/living/carbon/human/inventory.dm
#	code/modules/mob/living/carbon/human/life.dm
#	code/modules/mob/living/carbon/human/species/outsider/vox.dm
#	code/modules/mob/living/carbon/human/species/station/golem.dm
#	code/modules/mob/living/carbon/human/species/station/station.dm
#	code/modules/mob/living/carbon/human/update_icons.dm
#	code/modules/mob/living/carbon/metroid/metroid.dm
#	code/modules/mob/living/living.dm
#	code/modules/mob/living/living_defense.dm
#	code/modules/mob/living/living_defines.dm
#	code/modules/mob/living/silicon/ai/ai.dm
#	code/modules/mob/living/silicon/pai/admin.dm
#	code/modules/mob/living/silicon/pai/pai.dm
#	code/modules/mob/living/silicon/robot/drone/drone.dm
#	code/modules/mob/living/silicon/robot/drone/drone_manufacturer.dm
#	code/modules/mob/living/silicon/robot/emote.dm
#	code/modules/mob/living/silicon/robot/robot_items.dm
#	code/modules/mob/living/silicon/robot/robot_modules.dm
#	code/modules/mob/living/silicon/silicon.dm
#	code/modules/mob/living/simple_animal/bees.dm
#	code/modules/mob/living/simple_animal/friendly/cat.dm
#	code/modules/mob/living/simple_animal/friendly/corgi.dm
#	code/modules/mob/living/simple_animal/friendly/farm_animals.dm
#	code/modules/mob/living/simple_animal/friendly/mouse.dm
#	code/modules/mob/living/simple_animal/friendly/spiderbot.dm
#	code/modules/mob/living/simple_animal/hostile/hostile.dm
#	code/modules/mob/living/simple_animal/simple_animal.dm
#	code/modules/mob/logout.dm
#	code/modules/mob/mob.dm
#	code/modules/mob/mob_grab_specials.dm
#	code/modules/mob/mob_helpers.dm
#	code/modules/mob/new_player/sprite_accessories.dm
#	code/modules/organs/organ.dm
#	code/modules/organs/organ_alien.dm
#	code/modules/organs/organ_external.dm
#	code/modules/paperwork/faxmachine.dm
#	code/modules/projectiles/ammunition/boxes.dm
#	code/modules/projectiles/ammunition/bullets.dm
#	code/modules/projectiles/guns/energy/nuclear.dm
#	code/modules/projectiles/guns/energy/rifle.dm
#	code/modules/projectiles/guns/energy/special.dm
#	code/modules/projectiles/guns/projectile.dm
#	code/modules/projectiles/guns/projectile/automatic.dm
#	code/modules/projectiles/guns/projectile/pistol.dm
#	code/modules/projectiles/guns/projectile/revolver.dm
#	code/modules/projectiles/guns/projectile/shotgun.dm
#	code/modules/projectiles/projectile/bullets.dm
#	code/modules/projectiles/projectile/special.dm
#	code/modules/reagents/reagent_containers.dm
#	code/modules/reagents/reagent_containers/food/drinks.dm
#	code/modules/research/designs.dm
#	code/modules/research/destructive_analyzer.dm
#	code/modules/research/rdconsole.dm
#	code/modules/spells/artifacts.dm
#	code/modules/spells/spellbook.dm
#	code/modules/tables/tables.dm
#	code/world.dm
#	config/example/config.txt
#	icons/mob/items_lefthand.dmi
#	icons/mob/items_righthand.dmi
#	icons/obj/lighting.dmi
2016-10-31 00:01:52 +02:00
LordFowl
660a5d0063 Miscellaneous Content Patch (#1002)
rscadd: "Added three new energy-based weapons, one designed purely for pest-control."
rscadd: "Added a new rare handpistol, based off of a proposed competitor to the NT Mk58."
rscadd: "Added a new pet for the Head of Security - the PTR-7 Tranquilizer Rifle."
rscadd: "Syndicate manhack delivery grenades are now available via the traitor uplink."
rscadd: "Manhacks will no longer attack anyone belonging to the 'syndicate' faction, including Heist pirates."
tweak: "Tweaked loadout customisation whitelists, generally making them more restrictive by role."
bugfix: "It is no longer possible to be older or younger than your species ought to be."
2016-10-22 23:26:42 +03:00
skull132
87e041aa75 Merge remote-tracking branch 'bay12-upstream/master' into development 2016-10-07 00:58:39 +03:00
Alberyk
0c8f3c007d Adding old code duffel bags and mercs/wizards bags (#817)
Bringing back our duffel bags and antags packbags from old code.
2016-08-27 18:22:05 +02:00
NanakoAC
d6803a26e3 Respawning Tweaks (#646)
changes:

rscadd: "Respawn timers are now tracked individually for playing as animals (mice), small synthetics (drones and pAIs) and crew (everything else). This means you can now play as a mouse or drone while waiting to respawn as a full crewmember.".
tweak: "You can now spawn as a drone immediately upon joining as an observer, without having to wait ten minutes. There is still a cooldown between respawning as a drone if you just died as one."
tweak: "Slightly improved the error messages if you try to respawn when you've not waited long enough."
In addition, unlisted changes:
The admin verb 'Allow player to respawn' now sets all three respawn timers
Respawn times are now centralised in setup #defines, for easier editing in future
Nonliving mobs will no longer attempt to ghost when deleted. A comment in mob.dm explains this change
2016-08-03 22:34:41 +03:00
NanakoAC
40b1cec944 PAI Candidacy Fix (#666)
Fixes #108 
Fixes #661 
Fixes #608
2016-08-03 22:33:44 +03:00
skull132
b5b1f7abad Not hard-deleting characters (#552)
Characters are no longer hard deleted from the database.
This makes it so that persistent records about characters can't be fucked up.
2016-07-11 16:53:42 +03:00
skull132
3663ddcfed Welcome Screen (#535)
The idea is to consolidate all of the spam that you see on the lower right panel into one concrete, semi-persistent pop-up window. Utilizing bootstrap, it'll show you a neat welcome screen, the message of the day, staff memos (if accessible), and a personalized set of notifications. The system is set up for easy future expansion, as well.
2016-07-11 16:48:58 +03:00
Werner
7b25937ce9 CCIA Records (#520)
Display CCIA Records and Actions on the Employment Computer.
2016-07-09 03:13:04 +03:00
LordFowl
1cfb3086de Preference edits (#473)
Makes several lorefriendly changes to chargen.
Permits numbers in chargen naming for the benefit of IPCs.
Permits chargen fluff to be viewed via employment record consoles and ID cards.
2016-06-30 02:35:20 +03:00
LordFowl
56e288e910 Vaurca Content 2 (#426)
Vaurca hivemind language added.
Vaurca appropriate name generator added.
Tied Vaurca language to their neural socket organ.
Added a method for non-Vaurca to intercept the Vaurca hivenet so long as they construct the correct item.
Sprites for Vaurca organs.
Neutered all Vaurca.
Cutting open a Vaurca for surgery now requires heavier equipment.
Injecting a Vaurca with a syringe now will take time.
Adds various Vaurca cosmetic items available via loadout.
Adds a few new burst-fire weapons exploiting the burstfire fix - obtainable via research or adminbus.
Ports the ability to stick heads on spears from Paradise-code.
Added an error message when trying to bite someone before the cooldown expires.
Removed spoken Vaurca language.
Heavily nerfed K'ois' properties.
Halved the nutrition value of nutriment, returning it to old-code state.
Nerfed the damage dealt by bite, while reducing the cooldown.
Fixed burstfire weapons spamming attack messages when fired, allowing for more automatic weapons.
Fixed Vaurca player ability to select coloured eyes.
2016-06-24 14:55:44 +03:00
skull132
d3d53a9c4d Config Age Restrictions (#437)
Backports the old age restrictions system from old code. Age restrictions can now easily be applied by simply modifying a text file.
2016-06-23 02:13:43 +03:00
skull132
7dacaa28dd SQL Saving - Rewrite + Implenetation (#350)
Rewrite's Mahzel's SQL character and preference saving.
Introduces easy config switching between the new and old system, with no troubles at all.

Also introduces better logging for DBQuery/proc/parseArguments(), should something go wrong. And classes SQL query errors as full on error snow, as opposed to debug data.
2016-05-30 23:39:07 +03:00
LordFowl
f85e66640b Compatibility Patch
Modifies grown.dm, station.dm, snacks.dm, and preferences.dm to be
compatible with the latest devbuild.
2016-05-05 20:32:40 -04:00
LordFowl
818c3a484f Fixing Preferences
Manual fix to preferences.dm
2016-05-05 20:08:06 -04:00
LordFowl
c7ca0887e7 Vaurca Changes
Various vaurca-based changes, as detailed in the changelogs.
2016-05-05 19:10:05 -04:00
skull132
4be6656e96 Compatibility patch
Replaces instances of establish_db_connection() with establish_db_connection(dbcon).
2016-03-24 20:34:45 +02:00
skull132
2c4f5c42ea Merge remote-tracking branch 'Mahzel/development' into mahzel-compatibility 2016-03-24 20:25:07 +02:00
Mahzel
3b383ad315 #109 update
moved variables inside preferences datum
switched gear to the list2params trick (cleaner, faster, easier)
enabled intial character file system
2016-03-23 18:04:52 +01:00
Mahzel
ad7bbb25bc Characters DB R3
Corrected a bug when creating a new character
Corrected gear management issues (SQL is so annoyed by NULL things :( )
Corrected a slot detection issue
2016-03-18 23:48:50 +01:00
Mahzel
2f4c772d8c Debugging SQL characters
Fixed runtime errors while loading the game
Fixed runtime errors while changing characters
Fixed gear not being updated correctly.
2016-03-16 22:40:47 +01:00
Mahzel
14370d36b6 characters db continued
This one's not bad, but we need to think about how to integrate to the
main system. Dual save?
2016-03-15 23:51:35 +01:00
skull132
d848c591b6 IPC Body Colour
They can now choose it
2016-02-21 20:45:38 +02:00
Mahzel
df5761dd3f SQL characters pass 1 2016-02-11 22:52:04 +01:00
skull132
32037cc407 Fixing Whitelists
Why were you passing a datum into a field that was made up to use a string? Why. Did that seem like a good idea?
2016-02-02 00:33:49 +02:00
skull132
205ed7ed42 Merge remote-tracking branch 'origin/just-in-case'
# Conflicts:
#	code/game/objects/items/weapons/weaponry.dm

Conflict clearance for vampire.
2016-01-28 01:32:20 +02:00
Ryan784
5f655dbbdb Vampire Gamemode Developement Test
The Vampire gamemode, as ported right now. The gamemode is in, as well
as creating a vampire through the traitor panel. All abilities seem to
function, unable to test enthrall however (though I have a feeling it
will have to be redone). Enthralling someone without a CKey will give
you the correct response, however.

Any abilities having to do with lums will need to be redone. Vamphud as
well.

If looking over this and pointing out errors/fixing is faster than
simply porting it yourself, then feel free to do so!
2016-01-20 22:14:21 -05:00
PsiOmegaDelta
b74f2baf6d Makes special role preferences a list, instead of flag entry.
Allows us to define more than 16 special roles.
Updates some role usages to use the new ghost trap system.
2016-01-15 11:34:00 +01:00
Ryan784
1072aa68d9 Footstep Sounds + ASFX Tab
Footstep sounds and the ASFX Tab is back! You can not only hear
footsteps once again, but enable/disable the voting sound.
2016-01-14 18:28:09 -05:00
PsiOmegaDelta
079ea9ad9a Merge remote-tracking branch 'upstream/dev' into 151205-MoreCharacterSetupOptions
Conflicts:
	code/modules/client/preferences.dm
2015-12-06 12:15:04 +01:00
PsiOmegaDelta
fefa400604 Changes the character setup update flow.
Changes the way savefile version upgrades are done, letting each sub-setting handle it own upgrade path, while also making it easier to transfer settings between preferences and individual characters save slots.
2015-12-05 12:03:34 +01:00
PsiOmegaDelta
9b6b5ad4b3 Can now load/save/reload while readied.
The load window also no longer pops under the character setup screen.
Just some small character preference QoL changes.
2015-12-04 11:43:25 +01:00
PsiOmegaDelta
e40246e9df Character setup tweaks.
Adds client verb to access the character setup screen from anywhere.
Moves name validation to species level, making it possible for IPCs to have numbers in their name.
Adds gender validation, also adds support to add neuter/plural genders in the future if ever desired.
Now sanitizes preferences before applying them to a mob.
Fixes #11433.
2015-11-11 13:50:22 +01:00
PsiOmegaDelta
e116721977 Character setup refactoring.
Begins breaking down the large character setup in more manageable modules, allowing for easier additions, edits, and removals.
2015-10-18 17:34:35 +02:00