Merge branch 'master' of https://bitbucket.org/mudbytes/pyom

Conflicts:
	Rom24/pysrc/commands/do_goto.py
	Rom24/pysrc/living.py
Merge branch 'master' of https://bitbucket.org/mudbytes/pyom
re-design of equip/unequip:

now two base operations exist.

The more important of the two, is raw_unequip.

This will unequip an item, no questions. This was setup to facilitate extraction issues for items that need to be extracted, but may still be equipped (eg on quit, or if the item is vaporized).

There is also a raw_equip function.

Equip Action follows the following, from a PC perspective:
do_wear -> equip -> can_equip (T/F) -> raw_equip

Unequip:
do_remove -> unequip -> raw_unequip

ch.raw_equip(item, to_location)

ch.raw_unequip(item)

Added a secondary dummy check into item extraction to initiate an unequip if equipped. This was done as we may be initiating an extraction, without first extracting a player, and still need to unequip it.

Equip no longer directly adds/removes items from the players inventory. It calls a get action when equipping.
Merge branch 'master' of https://bitbucket.org/mudbytes/pyom
Tons o Fixin!
Merge branch 'master' of https://bitbucket.org/mudbytes/pyom into clean-dev
Merged in quixadhal/pyrom (pull request #80)

Fixed up read_word(), further speeding it up, and slightly corrected is_name() to fix an old bug from the original code.
Tons o Fixin!
Added second half of the stub code to nanny.py

Nanny was refactored:

class CharDummy was created to hold temp values like name.password until verified/accepted. Once that has occurred, it will load a real pc object.

Resets were slightly refactored, in that they were split apart, like nanny, into sub functions. Time to load was unchanged, or slightly faster in this scenario.

Many improvements to ancillary code, some speed boosts, but mostly fixing affect bugs, and some reset bugs.

Now we properly load all affects, and resets.

Time to load has ballooned as a result (25s~) and game size, 344mb on 64b machine.

One issue of the old code was that we were not actually creating unique instances.

setattr alone, simply passes references for things like lists, or dicts, or classes. So if we had a new NPC instance being created, it would actually be sharing all lists/dicts/etc with the template, and all other instances.. oops.

This resulted in a massive size increase, but they are now properly setup.

Split equip/unequip into portions.

Most important change is raw_unequip which will bypass all unequip checks, this is mostly for extraction use cases.
Added second half of the stub code to nanny.py

Nanny was refactored:

class CharDummy was created to hold temp values like name.password until verified/accepted. Once that has occurred, it will load a real pc object.

Resets were slightly refactored, in that they were split apart, like nanny, into sub functions. Time to load was unchanged, or slightly faster in this scenario.

Many improvements to ancillary code, some speed boosts, but mostly fixing affect bugs, and some reset bugs.

Now we properly load all affects, and resets.

Time to load has ballooned as a result (25s~) and game size, 344mb on 64b machine.

One issue of the old code was that we were not actually creating unique instances.

setattr alone, simply passes references for things like lists, or dicts, or classes. So if we had a new NPC instance being created, it would actually be sharing all lists/dicts/etc with the template, and all other instances.. oops.

This resulted in a massive size increase, but they are now properly setup.

Split equip/unequip into portions.

Most important change is raw_unequip which will bypass all unequip checks, this is mostly for extraction use cases.

+some fixes to the db load output to clear it up
Merge remote-tracking branch 'origin/master' into clean-dev

Conflicts:
	Rom24/pysrc/handler_item.py
	Rom24/pysrc/living.py
	Rom24/pysrc/merc.py
Added second half of the stub code to nanny.py

Nanny was refactored:

class CharDummy was created to hold temp values like name.password until verified/accepted. Once that has occurred, it will load a real pc object.

Resets were slightly refactored, in that they were split apart, like nanny, into sub functions. Time to load was unchanged, or slightly faster in this scenario.

Many improvements to ancillary code, some speed boosts, but mostly fixing affect bugs, and some reset bugs.

Now we properly load all affects, and resets.

Time to load has ballooned as a result (25s~) and game size, 344mb on 64b machine.

One issue of the old code was that we were not actually creating unique instances.

setattr alone, simply passes references for things like lists, or dicts, or classes. So if we had a new NPC instance being created, it would actually be sharing all lists/dicts/etc with the template, and all other instances.. oops.

This resulted in a massive size increase, but they are now properly setup.

Split equip/unequip into portions.

Most important change is raw_unequip which will bypass all unequip checks, this is mostly for extraction use cases.

+some fixes to the db load output to clear it up
Added second half of the stub code to nanny.py

Nanny was refactored:

class CharDummy was created to hold temp values like name.password until verified/accepted. Once that has occurred, it will load a real pc object.

Resets were slightly refactored, in that they were split apart, like nanny, into sub functions. Time to load was unchanged, or slightly faster in this scenario.

Many improvements to ancillary code, some speed boosts, but mostly fixing affect bugs, and some reset bugs.

Now we properly load all affects, and resets.

Time to load has ballooned as a result (25s~) and game size, 344mb on 64b machine.

One issue of the old code was that we were not actually creating unique instances.

setattr alone, simply passes references for things like lists, or dicts, or classes. So if we had a new NPC instance being created, it would actually be sharing all lists/dicts/etc with the template, and all other instances.. oops.

This resulted in a massive size increase, but they are now properly setup.

Split equip/unequip into portions.

Most important change is raw_unequip which will bypass all unequip checks, this is mostly for extraction use cases.

+some fixes to the db load output to clear it up

-Fixed a bug in new nanny code.
Merged in syn2083/pyrom-ns (pull request #81)

many changes..re-added living fixes..for real this time..
Added the ability to load areas gracefully, even if exits and resets are external to those areas. For development, you can remove most areas from your area.lst file to enjoy very fast boot times.
Merged in Polatrite/pyom/load-areas-gracefully-2 (pull request #82)

Added the ability to load areas gracefully, even if exits and resets are external to those areas. For development, you can remove most areas from your area.lst file to enjoy very fast boot times.
Added JSON code for rooms/areas/npcs and preliminary support for loading/saving the global_instances dict.
Moved the instance/template data out of merc and into instances.py
A bunch of small import fixes
Merge branch 'master' of https://bitbucket.org/mudbytes/pyom

Conflicts:
	Rom24/pysrc/commands/do_exits.py
	Rom24/pysrc/handler_ch.py
	Rom24/pysrc/living.py
	Rom24/pysrc/world_classes.py