Commit Graph

65 Commits

Author SHA1 Message Date
zxaber
1b0ef7d3a5 Fixes a rare case where the Malf law zero could be purged (#41673)
* Adding a check for when the AI is in a shell

* Update ai_laws.dm

* Forgot to remove a debug

* removed an uneeded return

* Update code/datums/ai_laws.dm

Co-Authored-By: zxaber <37497534+zxaber@users.noreply.github.com>

* Update code/datums/ai_laws.dm

Co-Authored-By: zxaber <37497534+zxaber@users.noreply.github.com>
2018-11-30 20:36:44 -05:00
Buggy123
720730b541 Added Overlord lawset
Added Overlord lawset based on the shitty suggestions thread and a really shitty movie.
2018-10-22 04:31:32 -04:00
Francesco
c74e157c70 [READY] Overthrow gamemode (#39876)
* Overthrow gamemode, again!

* Fixes objectives even more, especially AI one, removes boss antag subtype

* Fixes and refactors objective code, especially AI

* Expands greeting msg, fixes AI getting storage implant, rewords objectives to make it clear that they're teamshared objectives

* Resets gamemode required players to production values

* Lowered the number of teams existing during highpop

* refactors code a bit, fixes special_report to not use roundstart list, renames converter

* Cannot convert mindshielded people anymore unless you remove the implant

* Changes the Nothing explanation_text of head objective to hint at autoupdating, updates greet()

* Fixes define compile error
2018-08-29 03:35:10 +03:00
kevinz000
5f4b418eaa Movespeed Modification System (#39181)
In preparation of pixel movement, I want to refactor our slowdown system to something more modular, and something that doesn't require /quite/ as many proccalls/calculations a tick. The way this works is intended to only have things recalculate when it's necessary, rather than calling it every move.
However, I've left movement_delay() in, as without completely redoing a lot of code it's not /quite/ ready at this point to tear it out completely, but I'm hoping everything can be transitioned over to this system later.
2018-08-09 16:55:15 -04:00
ShizCalev
ff532a4ca4 Spellchecks TGStation 2018-06-19 18:57:44 -04:00
Nich
20bc55570a Fixes random-weighted AI laws (#38152) 2018-05-30 16:42:53 -07:00
Denton
863ea0956b OH YEAH BROTHER 2018-04-27 10:32:52 +02:00
Jordie
9de5d92b8c colour fix 2018-03-19 19:53:18 -05:00
Jordie
9c1731e75b Distinguishes law types by colour (#36463)
* distinguishes law types by colour

* hacked laws now separate from ionic

* fix and less src.

* moves hacked laws above ion

* also the ai fixer

* also missed order in stating laws

* Less garish blue
2018-03-19 20:31:51 -04:00
ShizCalev
61fe922cce clear_zeroth_law sanity check 2018-01-25 22:50:47 -06:00
Tad Hardesty
1be60a2cd3 Fix replace_random_law runtime 2018-01-22 16:46:46 -08:00
Jordan Brown
015258d01c Config dir again except this time it works (#34606)
* Revert "Revert "Fix config_dir usage (#34469)""

* Make config exist before world/New but not load it until then
2018-01-21 19:32:12 +01:00
oranges
48575ccf70 Revert "Fix config_dir usage (#34469)"
This reverts commit 7be3d32290.
2018-01-19 01:26:40 +00:00
Jordan Brown
7be3d32290 Fix config_dir usage (#34469)
* Makes things use GLOB.config_dir

* GLOB.config_dir => global.config.directory

* Fix /datum/configuration
2018-01-19 11:55:09 +13:00
AnturK
3d813853b5 Roundend report refactor (#33246)
* Roundend report refactor

* I won't be fixining every moved part but here you go

* Preparation for feedback

* Fixup

* First draft of feedback (wip)

* Simple version of feedback for custom objectives/explanation texts

* Debug verb removal

* Fixes & show again action button

* Admin objective handling

* Fix and first step of css standarization.

* Every time

* More css

* Fix

* Fixes, abductee datum, css tweak

* Feedback and css fix

* CLIENT DETAILS DATUM + CLIENT ACTIONS + spilled css fix

* Integrates clockult badcode

* Fix

* Fix lists in assoc feedback

* Unified antagonists and teams feedbacks, bumped up antagonists version

* Adds chat link to reopen the the report

* Fixes some clockcult stuff, passes antag name to feedback

* review stuff

* fix

* Adds some missing spacing

* Roundend corners, has css gone too far.

* Spacing between same antags

* Changeling and traitor objectives now have same spacing

* Wizar report typo fix

* Wrap brother team.

* Also move it to more relevant file

* Fixes cult summon objective

* Fixes roundend report for full-round observers

* Fixes wizard with apprentices roundend report

* Tutorial scarabs don't show in roundend anymore, adds some check_ticks

* Prettier station goals

* Merges roundend delay things

* Spread the lag around

* Fixes relogin qdeling eminence

* ckey -> key
2017-12-11 11:57:20 -05:00
Jordan Brown
f7171e727b Fixes AI law weights infinite loop 2017-09-29 17:30:25 -05:00
Jordan Brown
4178c209f1 Configuration datum refactor (#30763)
* Configuration datum refactor

* More WIP

* New easier on the eyes format

* More WIP

* Finished config.txt

* Fucktons more WIP

* The end of conversion draws near...

* Add all this shit

* Done converting entries finally

* Hunting down compile errors

* More WIP

* MORE CONVERSIONS

* More WIP

* More WIP

* Oh shit only 90 errors this time!

* IT COMPILES!!!

* Fixes world start runtimes
2017-09-29 15:36:51 +13:00
AnturK
292638c209 Specifies one format of variable declaration for the codebase. (#30926)
* Removes occurences of var name

* Contributing note

* note fixup
2017-09-22 13:43:52 -04:00
Mike Long
4687dd0117 Devil refactor+small revamp (#26815)
Hello, with PR #26717 merged, I think it's a good time to add devils to the standardized antag datum system.

This PR is mostly a refactor, which shouldn't be noticed by the playerbase. Changes that might be noticed are below.

🆑
tweak: Modified chances for returning someone's soul using an employment contract. Now everyone has a chance, not just lawyers and HoP.
add: Particularly brain damaged people can no longer sign infernal contracts properly.
tweak: Infernal contracts for power no longer give fireball, and instead give robeless 'lightning bolt' spell.
add: Devils can now sell you a friend, for the cost of your soul.
tweak: The codex gigas should now be easier to use, and less finicky.
del: The codex gigas no longer sintouches readers.
/🆑
2017-05-10 22:02:17 +12:00
Cyberboss
7ddea10cd7 Exploit whack-a-mole 2017-04-23 21:16:10 -04:00
Lzimann
5a618297ce Replaces the default output with the to_chat wrapper. 2017-03-10 01:32:05 -03:00
MrPerson
f4e768c895 Ion storm improvements (#24223)
* Ion storm improvements

Ion storms have several new additions:
25% chance to flatly replace the AI's core lawset with something random in the config. Suddenly the AI is Corporate, deal w/ it.
10% chance to delete one of the AI's core or supplied laws. Hope you treated the AI well without its precious law 1 to protect your sorry ass.
10% chance that, instead of adding a random law, it will instead replace one of the AI's existing core or supplied laws with the ion law. Otherwise, it adds the generated law as normal. There's still a 100% chance of getting a generated ion law.

All of these stack so you could wind up going from Asimov to Paladin w/o the first law and w/ the last law replaced with THE SHUTTLE CANNOT BE CALLED DUE TO FIVE NINJAS. All the values are easy to tweak if you guys want them higher or lower or whatever.

Custom admin-sent and other fake ion storms (devils) will just add the law and have no chance of doing any of the bonus stuff.

Removed the admin verb to send an ion storm since you can just use the events panel.

Cleaned up some of the law-adding backend. Hopefully there's no double showing of the AI's laws after a lawchange as a result of this.

* Everyday I'm shufflin'
2017-02-22 13:31:04 +01:00
oranges
f57b6c2f21 Merge pull request #23785 from coiax/guardian-of-balance
Adds 'Guardian of Balance' AI lawset
2017-02-08 18:26:30 +13:00
Jack Edge
515f5b69c2 Adds 'Guardian of Balance' AI lawset
🆑 coiax
add: Adds a 'Guardian of Balance' lawset and AI module, currently admin
spawn only.
/🆑

- Also refactors some of AI_modules.dm to use the /datum/ai_laws stuff
to avoid law duplication.
2017-02-06 18:20:54 +00:00
XDTM
eb5086a307 Misc law changes 2017-02-02 12:18:49 +01:00
AnturK
e6169e8d42 Minor AI fixes. (#23105)
* Fixes #20469

* Fixes #9062 again.

* Fixes #10283
Laws above 20 will replace laws of same or lower importance.
2017-01-26 19:40:45 -06:00
Joan Lung
95af0534f6 MMI'd clockcultists put in AI cores will properly lose clockcult status (#22369)
* MMI'd clockcultists put in AI cores will properly lose clockcult

* uuuuugh

* fix the core while we're at it

* "

* mrrp

* this will also follow you around

* hmm
2016-12-25 16:18:55 +13:00
coiax
2426bcb7d9 Adds "weighted random" AI law config (#22081)
* Adds "weighted random" AI law config

- Streamlines some duplicated code for law config stuff
- Makes a new "weighted random" option for AI laws, where an AI has a
random lawset, but some lawsets are more common than others.

80% normal, 20% quirky.

For those unwilling to source dive, here are the weights:

- 32% Asimov
- 12% Asimov++
- 12% Corporate
- 12% Robocop
- 12% Paladin

- 4% Maintain
- 4% Reporter
- 3% Hippocratic
- 3% Live and Let Live
- 3% Peacekeeper
- 3% Drone

* Law weights are now in the config file
2016-12-13 13:42:35 +01:00
Shadowlight213
c2d0cf3066 Allows the possible roundstart random AI laws to be customized in config. (#21414) 2016-11-10 09:27:57 +13:00
lordpidey
d923e16044 Adds "law 666" for cyborg devils. (#19646)
* Adds "law 666" for robot devils.

* Minor refactors for Remie

* Fixes compile error.

* I'm an idiot.
2016-08-03 10:18:37 +12:00
Xhuis
685d938481 Some more work or something, idk 2016-06-02 20:53:51 -04:00
xxalpha
0d608250fa Changed AI core programming so it functions like the AI Upload. (#18004) 2016-05-30 10:54:50 +12:00
duncathan salt
e0d3ac1d28 Merge pull request #16050 from Dorsisdwarf/AIlaws
Adds a series of new laws and boards
2016-03-12 15:12:42 -06:00
Dorsisdwarf
eec22d0ca4 Adds a series of new laws and boards 2016-03-11 19:58:59 +00:00
Firecage
7f96592b87 Merge Conflict Fix 2016-01-27 13:29:38 +02:00
AnturK
9e8eca56a7 Adds AI card tgui
Removes the multiple AI's on one card semi feature.
2016-01-24 12:52:31 +01:00
Firecage
332bde0f4f Does the rest of the if()'s/ else's 2016-01-17 19:03:12 +02:00
Pieter Vlasblom
a50c5aac6f Revert "changes robocop law priority" 2015-12-19 00:50:51 +01:00
Cheridan
dd547f8b7a Merge pull request #13643 from CPTANT/Robocop
changes robocop law priority
2015-12-18 17:48:21 -06:00
CPTANT
20c6659c4a changes robocop law priority 2015-12-14 17:28:36 +01:00
Incoming
1f9f0dfc40 Adds subtypesof(). It's shorthand for typesof(path) - path.
Replaces typesof(path) - path with subtypesof(path) in obvious places. I was a bit conservative, there's probably a few more places that could use this.
2015-11-16 18:55:57 -05:00
Firecage
dfae1e0b53 Changes a lot of del() to qdel() 2015-08-16 23:33:22 +02:00
MrPerson
619eb89a40 Add a compile time warning for out of date byond versions
Of course none of you idiots are going to upkeep this shit so I'm not sure why I even bother

Also fixes the stuff pointed out by Miauw
2015-07-24 06:39:12 -07:00
MrPerson
471d69fcf7 Change many ERROR() calls into thrown exceptions
This requires a 508 beta version to use. If Travis fails this he's a bitch

Exceptions will generate a stack trace, which is way easier to see and more helpful in actually solving this kind of crap. Also logs all the arguments, src, line, and file automatically.
Removed any dubiously helpful information in the exception names so the runtime condenser won't see each one as a different runtime. If the information is critical to solve these bugs (camera one maybe?), then I'll just make these warnings.
Thrown exceptions crash the currently running proc. Yes that means there's useless returns in a bunch of these, sue me. spawn()'s are to let the proc continue.

Almost all of these are difficult to trigger, but I did test playsound. And frankly even if they do cause bugs by crashing procs, big whoop
2015-07-23 08:19:08 -07:00
Firecage
4688c2c969 Fixes proc arguments 2015-07-15 23:52:35 +02:00
Jordie0608
4fd2c24ca5 zeroth laws can be removed with core boards 2015-05-28 19:38:06 +10:00
Firecage
6c7af5eb32 SPANCLASSES!!!!! 2014-08-26 09:52:13 +02:00
Cheridan
2b64683a6b Refactors pAI law code to use the inherited laws datum instead of its own specific variables
Removes annoying double-message box when selecting NEVER FOR THIS ROUND.
Span classes
2014-04-09 12:38:22 -05:00
Miauw
520b114293 fixes shit 2014-03-09 18:31:43 +01:00
Miauw
758ca4f81c Added a failsafe, default_laws is now a config option. 2013-12-23 13:10:04 +01:00