Commit graph

954 commits

Author SHA1 Message Date
Vorspire
803cd14fc3 + Update project settings. 2015-08-23 02:36:34 +01:00
Vorspire
a32c4573ad + Execute and store the results of the Linq query as a List to prevent collection modified exceptions.
* The List is a member of PooledEnumerable<T> and is thus pooled along with it.
2015-08-23 02:13:49 +01:00
Vorspire
af86aa23c7 + Update project settings.
* Scripts project assembly name changed to "Scripts.CS" and build output targets the "Scripts/Output/" directory to mimic RunUO's ScriptCompiler behaviour.
2015-08-23 01:51:26 +01:00
Vorspire
413f9844b7 - Disable WebStatus by default. 2015-08-23 01:43:12 +01:00
Vorspire
887ca5d341 + Don't allow processing of the Timer changed queue while the world is loading or saving.
* Removes the risk of inconsistency [warnings] generated by timers that tick with handlers that modify World.Items and World.Mobiles during I/O.

+ Update description of Core.TickCount.
2015-08-23 01:40:09 +01:00
Vorspire
5d50a5a37c + Added simple HttpListener for the integrated RunUO status page.
* HttpListener will serve the status page to a URI in the format of http://<shard-ip>/status/
* Port 80 may need to be white-listed for external requests to be served.
2015-08-23 01:34:04 +01:00
Vorspire
d093acfb2e + Make sure #Map_NewEnumerables is defined by default, multiple sources have verified stability.
+ Core housekeeping, converted some for-loops to foreach-loops.

+ Reimplementation of Core.TickCount using only native .NET Stopwatch.
* Stopwatch actually wraps the QueryPerformanceCounter method to get its result and can also be used to determine whether HRT is supported.
- Removed SafeNativeMethods DLLImport for QueryPerformanceCounter.

+ Added Core.GlobalUpdateRange to define a constant standard range used in many calculations throughout RunUO.
* The value '18' in a range context is hard-coded in many places, this new property will eventually be used to replace those usages.
2015-08-22 04:50:05 +01:00
Vorspire
75c9c79a48 + Added FastMovementImpl
* Can be enabled or disabled by setting the static property 'Enabled' to true or false (disabled by default).
* Uses single-list caching for movement operations instead of multiple caches depending on direction.
* Uses deferred Linq queries to process high volumes of items in collision detection only when necessary.
* Reduces movement lag for all Mobiles, including players, even with thousands of on-screen Mobiles and Items.
2015-08-22 03:26:10 +01:00
Vorspire
9bae957ccb + Map Updates (4)
* Details in-file: Map.cs
2015-08-21 23:09:49 +01:00
Vorspire
3bd3949baa Merge pull request #1 from runuo/master
Project Sync
2015-08-20 09:20:23 +01:00
Mark Sturgill
9df225fd05 Update README.md 2015-07-22 11:30:30 -07:00
Mark Sturgill
0be4162ae7 fix minor patch errata 2015-07-20 20:46:36 -07:00
Mark Sturgill
28aa20340c Update README.md 2015-07-20 20:43:51 -07:00
Mark Sturgill
c3dcb5d07e Create .travis.yml 2015-07-20 20:22:26 -07:00
Mark Sturgill
0c7dbccb6e Merge pull request #7 from Vorspire/patch-1
Infinite Loop Breakout
2015-07-20 20:06:41 -07:00
Vorspire
1e5bc72366 Infinite Loop Breakout
There is a very rare potential, mostly in custom situations, for the 'BaseRunicTool' 'ApplySkillBonus' method to cause the server to become unresponsive.
The reason for this is that, if you call the method on a 'Spellbook' which already has all 4 of the skills listed by default in 'm_PossibleSpellbookSkills', then 'found' is always true.

This issue has been reproduced on a shard that calls 'ApplySkillBonus' more than once when crafting 'Spellbooks'; the rarity is that the 'ApplyAttributesTo' method may call the 'ApplySkillBonus' more than once; the off-chance of 5 consecutive calls, where each preceding call applies one unique skill of the 'possibleSkills', would result in the 5th call entering the deadlock state.

The fix is quite simple, evaluate the 'count' in the while statement and decrement it for each skill that is checked; removing each skill from the 'possibleSkills' list as they are checked, to prevent them being checked multiple times due to the random indices selection.
2015-07-21 00:45:43 +01:00
Mark Sturgill
1a5653c40d Merge pull request #6 from gitter-badger/gitter-badge
Add a Gitter chat badge to README.md
2015-07-06 23:58:49 -07:00
The Gitter Badger
851974d222 Added Gitter badge 2015-07-07 06:38:02 +00:00
Mark Sturgill
1920989a75 Mindblast modifier to /2 (Fix #5) 2015-07-04 18:29:10 -07:00
Mark Sturgill
7bafd77c6f Fix #4 2015-07-04 18:27:52 -07:00
Mark Sturgill
07921356d4 Merge pull request #2 from fraga/fixCS0165
If it makes Mono happy, why not?

Fix compile error CS0165 on Mono
2014-07-05 23:22:02 -07:00
Rodrigo Fraga
d8e6ddf13b Fix compile error CS0165 on Mono
When running on mono building scripts, it will yield

Errors:
 + Engines/BulkOrders/SmallTailorBOD.cs:
     CS0165: Line 88: Use of unassigned local variable `useMaterials'

Calling RandomBool out of if
2014-07-06 02:08:02 -04:00
Mark Sturgill
ab4246058b add bombing run, double domination, king of the hill, and capture the flag events
add faction tournament mode
update vs project
2014-04-25 16:06:45 -07:00
Mark Sturgill
ba8e6c7a19 changing ip autodetection url, yet again 2014-04-23 00:12:15 -07:00
Mark Sturgill
568bd43733 RFC 6598 2014-04-14 02:55:16 -07:00
Mark Sturgill
3bc81ea952 Merge pull request #1 from Ravenwolfe/master
Found issue with XMLserialization using local time to serialize instead ...
2014-04-13 21:16:12 -07:00
Ravenwolfe
06fa2ab343 Found issue with XMLserialization using local time to serialize instead of UTC. Changed to be consistent with rest of project. 2014-04-13 22:03:06 -05:00
Mark Sturgill
1a5ec1b996 Merge branch 'master' of github.com:runuo/runuo 2014-04-03 03:26:01 -07:00
Mark Sturgill
a29be6d64c switch ip autodetection to azure, no ssl for MONO because of cert dep 2014-04-03 03:24:42 -07:00
Mark Sturgill
b6f7c1e341 Update README.md 2014-04-01 14:17:49 -07:00
Mark Sturgill
fc96362050 autodetection url 2014-03-31 20:39:22 -07:00
Mark Sturgill
963606e376 power faction item creation and duel presence 2014-03-28 12:44:32 -07:00
Mark Sturgill
383f6cbada add power faction items 2014-03-28 12:29:31 -07:00
Mark Sturgill
6851c59521 add comments command and comments gump 2014-03-28 12:21:04 -07:00
Mark Sturgill
5703f6ab78 comments 2014-03-26 11:45:46 -07:00
Mark Sturgill
5003f7c4a9 add NEWTIMERS and NEWPARENT preprocessor directives to assist third party developers 2014-03-09 17:07:26 -07:00
Mark Sturgill
54aef01c72 (potentially) more portable implementation of double/float serialization for mono 2014-03-07 17:36:28 -07:00
Mark Sturgill
6ad068c3eb tiger shrink table entry 2014-03-05 15:39:08 -07:00
Mark Sturgill
7060d1ffa5 add tiger to bodyTable.cfg 2014-03-05 13:10:01 -07:00
Mark Sturgill
49941a49af typo 2014-03-05 11:49:36 -07:00
Mark Sturgill
7adf78d74b update razor path and add rdrand note 2014-02-28 13:27:33 -07:00
Mark Sturgill
d2349164ce edge-case bandaid for disguise kits
this should really be fully rewritten to not be so dependent on the underlying timer state
2014-02-27 13:46:12 -07:00
Mark Sturgill
b3f61771cb remove old Assemblies.cfg reference from vs solution 2014-02-26 15:08:14 -07:00
Mark Sturgill
83bf81b7ee synchronize Server/Scripts project properties
whitespace/comment changes in Serialization.cs and ScriptCompiler.cs
proper dispose pattern for Listener
remove IDisposable from FileLogger
2014-02-25 14:00:32 -07:00
Mark Sturgill
abe9f5acb2 add AssemblyInfo.cs to Scripts (primarily to remove ComVisible code analyzer nag) 2014-02-25 13:56:48 -07:00
Mark Sturgill
2bb6984b94
update MONO build line 2014-02-22 13:11:17 -07:00
Mark Sturgill
76b7fa6f30 add OnSingleClick for BulkOrderBook and Aquarium
allow primary LadderController instance to be deleted
add MessageRuleset method to DuelContext
2014-02-22 12:56:58 -07:00
Mark Sturgill
041c976ddc fix null ref in bounce 2014-02-21 19:04:53 -07:00
Mark Sturgill
0bd09dbeac line ending normalization 2014-02-18 10:23:15 -07:00
Mark Sturgill
57a73805bb Merge branch 'dev/2.6' 2014-02-16 14:09:57 -07:00