Activity
From 2014-01-13 to 2014-01-26
2014-01-26
- 22:36 Revision 394fc21e (github): Hexen|ACS: Continued work on clarifying/remodeling the ACS bytecode interpreter
- 20:13 Revision d8b1dfa8 (github): Refactor|Hexen|ACS: Renamed some ACS scripting components, for clarity
- 19:42 Revision 9a8242f1 (github): Hexen: Cleanup
- 19:11 Revision ad29593b (github): Merge branch 'master' of github.com:skyjake/Doomsday-Engine
- 19:11 Revision 2250621f (github): Refactor|Hexen: Switched ACS bytecode interpreter to C++, renamed sources, cleanup
- 19:00 Revision f181619e (github): Shell|GUI: Updated toolbar icons
- Simplified, clean appearance.
- 18:38 Revision 5d3d425c (github): UI|Client: Animate alerts and server list items as they appear
- 18:37 Revision 9bd63820 (github): libappfw|LabelWidget: Optionally animate label size when ready for drawing
- 18:05 Bug #1719: Letterboxed/pillarboxed drawing of the game is broken
- Please delete me.
- 18:02 Bug #1719: Letterboxed/pillarboxed drawing of the game is broken
- Doomsday does have "smart stretching" and it is indeed already enabled by default. The way it works is to compare the...
- 17:44 Bug #1719: Letterboxed/pillarboxed drawing of the game is broken
- Please delete me.
- 14:08 Bug #1719: Letterboxed/pillarboxed drawing of the game is broken
- Also, since this feature is in the engine, shouldn't we make it the default that menu/intermissions/finales stay in 4...
- 09:32 Bug #1719: Letterboxed/pillarboxed drawing of the game is broken
- The boxed projection must be configurable enough to support dynamically enabling/disabling it depending on the curren...
- 07:34 Bug #1719: Letterboxed/pillarboxed drawing of the game is broken
- Should we drop the old letter/pillarbox scaling and simply resize GameWidget and GameUIWidget appropriately?
The s... - 16:25 Revision c86633b4 (github): Merge branch 'master' into ui-multiplayer
- Conflicts:
doomsday/libdeng2/src/core/log.cpp - 16:24 Revision 789221e7 (github): UI|GL: Small adjustment to text line width compression
- 14:24 Revision a13ba208 (github): Fixed|libgui|qmake: Platform-specific source file
- 13:30 Revision d1574dad (github): UI|Client|Default Style: Added and applied an alternative accent color
- The alternative accent is supposed to match the logo’s color. It
is now used for editor hints, log timestamps and def... - 13:26 Revision 6bdb9aa7 (github): libdeng2|Vector: Added a method for swapped X and Z components
- 13:26 Revision 9452f7af (github): Client|Default Style|OS X: Added mappings for native font styles
- The function App.addFontMapping() can be used to specify a font
mapping dictionary. - 13:24 Revision 50a47445 (github): Client: Tweaked line wrapping and GL text composition
- Wrap positions are found more accurately.
- 13:23 Revision a9418749 (github): Fixed|libgui: Cleaned up and fixed Core Text based native fonts
- 13:19 Revision 1193f65a (github): libgui: NativeFont is now public
- The application can define font mappings.
- 13:17 Bug #1721 (Closed): [OS X] Incorrect font weights
- Qt is having a hard time picking the correct font weights in OS X. The solution is to use the native Core Text API to...
- 08:36 Revision 16eef031 (github): Merge branch 'master' into osx-coretext
- 08:32 Revision 2a6b83fd (github): OS X|libgui|Font: Working on Core Text font rendering
- Added a cache for Core Text font objects in use to avoid repeated
lookups. In the OS X build, de::Font will now use C... - 08:29 Revision 72383c1d (github): libdeng2|Vector: Added method for converting to Vector4f
- 08:21 Revision 1616ef52 (github): UI|Client|Console: Wider grab area for resizing the console edge
- IssueID #1716
- 08:20 Revision cbd6c47e (github): UI|Client: Game selection menu adapts to small view sizes
- The number of columns and rows is now reduced if the view is small.
The menu will scroll if all items don’t fit.
Iss... - 07:51 Bug #1716 (In Progress): [Windows] Cannot resize console history widget if the edge meets the edge of the window
- In OS X, there is a one-pixel wide area where one can still grab the console edge even if it is full width. I'm guess...
- 07:46 Revision 9896f275 (github): Removed inadvertently committed autosave file
- 07:42 Bug #1715: [Ring Zero UI] Game selection widget items clipped as they overflow (e.g., in 640x480)
- vermil wrote:
> I'll add to this and say that if one is running Dday in an odd shaped window size, that the loading ... - 07:40 Bug #1715 (In Progress): [Ring Zero UI] Game selection widget items clipped as they overflow (e.g., in 640x480)
- This is not a bug as such, as this behavior is completely intentional. The real issue is lack of responsivity in the ...
2014-01-25
- 21:35 Bug #1720 (Closed): [multiplayer] client seg fault when something moves
- Pretty much what the subject says; in the latest unstable build (1119) when anything moves in a multiplayer game, mon...
- 21:28 Bug #1715: [Ring Zero UI] Game selection widget items clipped as they overflow (e.g., in 640x480)
- I'll add to this and say that if one is running Dday in an odd shaped window size, that the loading wheel during engi...
- 02:22 Bug #1715: [Ring Zero UI] Game selection widget items clipped as they overflow (e.g., in 640x480)
- In fact the scaling issues occur at various window sizes, see the attached screenshots.
- 00:32 Bug #1715: [Ring Zero UI] Game selection widget items clipped as they overflow (e.g., in 640x480)
- There also appears to be some scaling issues with the console history widget.
EDIT: Correction; one cannot resize ... - 00:24 Bug #1715 (Closed): [Ring Zero UI] Game selection widget items clipped as they overflow (e.g., in 640x480)
- The game selection menu items are sized incorrectly when the main window is too small (e.g., at 640 x 480).
- 14:58 Revision 03519515 (github): Merge branch 'osx-coretext' of ssh://github.com/skyjake/Doomsday-Engine into osx-coretext
- 14:55 Revision fc7b4403 (github): libgui|OS X: Added a native font class for Core Text
- 14:54 Revision 69f6f672 (github): Fixed|Hexen: Namespace of memcpy
- 14:53 Revision 710fe8d5 (github): Fixed|libgui: Rasterizing text (refactoring regression)
- 14:40 Revision e42b7c97 (github): Refactor|Hexen: Moved ACScript (thinker) savegame io to p_acs.c
- 13:59 Revision a72f18c5 (github): Refactor|Hexen: Moved ACS savegame io to p_acs.c, cleanup
- 13:23 Revision c9dfb337 (github): libgui: Cleanup
- 13:11 Revision 8fdacc2f (github): Refactor|libcommon: Reworked more logical episode + map number lookups using Uri
- There are now very few places where the logical numbers are still
relevant (ACS and network deltas being the main cas... - 12:47 Revision d738c533 (github): libcommon|HexLex: Cleanup
- 12:34 Revision 2c8a9311 (github): libcommon|HexLex: HexLex no longer accesses the DED definition database
- If DED definition lookup is necessary for translating a parsed value
then this should be implemented in the parser in... - 12:33 Revision 1b4c7196 (github): Refactor|libgui: Native font abstraction
- Added a class called NativeFont that hides the details of font
selection, measuring, and rasterization. QtNativeFont ... - 09:45 Revision 933c9058 (github): Hexen|SndInfoParser: Fix patching of MAPINFO (lump) definitions with SNDINFO-read values
- (The only time a mapinfo_t is modified outside of MapInfoParser).
- 08:47 Revision 63f71ad7 (github): Cleanup|libgui: Separated rich formatting from font.cpp
- Font::RichFormat is a bigger implementation than the main Font class.
- 08:40 Revision 479ce9b2 (github): Debug|Hexen: Fix log output of P_TranslateMapIfExists()
- 08:31 Revision 2d44bf78 (github): Hexen|MapInfoParser: Cleanup
- 08:26 Revision b3ed8cd9 (github): Hexen: Allow patching of map definitions in MAPINFO lumps
- A later map definition with the same id will now patch the previously
defined map with additional/replacement propert... - 08:05 Revision 74115143 (github): Hexen: The mapinfo definition database is now indexed by map URI
- 04:31 Revision f202aabc (github): Fixed|Hexen|SndInfoParser: SIGSEGV attempting to parse a SNDINFO lump intended for ZDoom
- An error is thrown if a lump presented to SndInfoParser() contains
unknown commands.
The vanilla parser attempts to ... - 03:58 Revision 8cfce096 (github): libcommon|HexLex: Cleanup
- 03:22 Revision 2717c889 (github): Refactor|libcommon: Moved sound sequence savegame io to sn_sonix.cpp
- Doing this in an external module is not a good idea as it demands
exposing knowledge of the sequence-internal represe... - 02:42 Revision b21270bd (github): libcommon: Cleanup
- 02:41 Revision 50fbb640 (github): Refactor: Moved AnimDefsParser() to libcommon
- 02:02 Bug #1719: Letterboxed/pillarboxed drawing of the game is broken
- InFine does not respect rend-finale-stretch.
- 01:57 Bug #1719: Letterboxed/pillarboxed drawing of the game is broken
- The issue appears to be Doom screen melting from a non-letterboxed screen to a letterboxed one.
When this occurs, ... - 01:54 Bug #1719 (Closed): Letterboxed/pillarboxed drawing of the game is broken
- 01:09 Bug #1718: Inventory item display/selection issues
- The inventory in Heretic doesn't appear to scroll when backspace is used, rather it page flips. When it flips one get...
- 01:02 Bug #1718 (New): Inventory item display/selection issues
- The effective number of active slots is not reset when starting a new game.
Also, in Heretic, there appears to be ... - 01:09 Bug #1717: [Windows] Obsolete support and update links in Add / Remove Programs
- The current version number is also missing from the application metadata.
- 00:56 Bug #1717 (Closed): [Windows] Obsolete support and update links in Add / Remove Programs
- The application metadata is marked with obsolete help, support and update links, directing to the wiki and/or project...
- 01:07 Bug #1696 (Closed): BspLeaf::cluster: No sector cluster is attributed
- 00:46 Bug #1716 (Closed): [Windows] Cannot resize console history widget if the edge meets the edge of the window
- If the console history widget is resized so that it fills the window, one cannot "grab" the edge to adjust it further.
2014-01-24
- 23:06 Revision a5a96c2e (github): Hexen|MapInfoParser: Fixed map music assignment; cleanup
- 22:44 Revision 72ff01d4 (github): Hexen|MapInfoParser: Cleanup
- 22:35 Revision c2eef61a (github): API: Added Def_Get() identifier DD_DEF_MUSIC_CDTRACK
- Returns the CD track attributed to the referenced music definition.
- 22:03 Revision b6b852d4 (github): libcommon: Cleanup
- 21:50 Revision c6a9bad9 (github): Documentation|libcommon|HexLex: Improved apidoc for HexLex
- 21:34 Revision e3395dcc (github): libcommon|HexLex: Cleanup
2014-01-23
- 23:28 Revision e0d08825 (github): libcommon|HexLex: Continued cleaning up HexLex
- 21:32 Revision e548c62e (github): UI|Client: Working on the multiplayer dialog
- Listing found servers. The Game can now be asked to provide the
ID of the game logo image. - 14:06 Revision fd2559e8 (github): Merge branch 'master' of github.com:skyjake/Doomsday-Engine
- 14:06 Revision ff8d2edf (github): Refactor|Hexen: Use HexLex to parse SNDINFO/SNDSEQ data
- 14:04 Revision 067e9b50 (github): Refactor|Hexen: Use HexLex to parse ANIMDEFS data
- 14:02 Revision 2457b285 (github): Refactor|Hexen: Use HexLex to parse MAPINFO data
- 13:58 Revision 29e810ab (github): libcommon: Derived HexLex (class) from Hexen's script parser
- A (common) lexical analyzer for Hexen definition/script syntaxes.
Todo: Cleanup - 13:52 Revision e1efab84 (github): libdeng1|API: Added Str_StartsWith()
- 13:49 Revision 3d6eca10 (github): Map|World: Cleanup
- 13:34 Revision ce5e189d (github): API: Added M_ReadFileIntoString()
- A convenient method of reading a file or WAD lump into a string.
- 10:24 Revision 6656bf75 (github): UI|Client|Log: Adjusted entry metadata color (domain letter)
- 10:23 Revision 75eae3ec (github): UI|Client: Working on the multiplayer dialog
2014-01-22
- 12:59 Revision 60c2b46b (github): libgui|KeyEvent: Warn about unmapped keys using a Dev entry
- 12:58 Revision a97be38e (github): libgui|KeyEvent: Warn about unmapped keys using a Dev entry
- 10:59 Revision 3f50dff9 (github): UI|Multiplayer: Added empty stub for Multiplayer Games dialog
- The dialog can be accessed via the DE menu.
2014-01-20
- 16:36 Revision 403cf060 (github): Documentation|libdeng2: Group for Binder
- 15:43 Revision a743a92c (github): Cleanup
- 14:48 Revision c3a5a3b9 (github): UI|Client|LensFx: Don’t draw vignette if there is no map loaded
- 14:48 Revision 2a577ab9 (github): Fixed|Hexen: Build failure
- 14:11 Revision 9de2aa2d (github): Fixed|InFine: Animation gets stuck (suspended) after playdemo
- This commit fixes the issue where the game view would be obscured
by the title animation after a game was started. Th... - 09:50 Revision 84f79ac7 (github): libhexen|Cleanup: Continued cleaning up MAPINFO lump parsing
- 09:05 Revision b3991ba3 (github): libhexen: Cleanup
- 08:20 Revision d1eece9f (github): libcommon: Fix build warnings (uninitialized variable access)
- 08:08 Revision d8a2224a (github): libcommon: Typos
- 07:38 Revision f99399fe (github): Refactor: Consolidated and cleaned up methods of querying map author/title info
- Map author and title info is now primarily available through read-only
console variables 'map-author' and 'map-name'.... - 01:21 Revision b4232042 (github): Merge branch 'master' of github.com:skyjake/Doomsday-Engine
- 01:21 Revision b5aaabf0 (github): Console: Improved output of 'inspectmap'
- Now includes more pertinent map information, such as the full title
(which is presently obtained by querying a game r... - 01:13 Revision 071e9be5 (github): Thinkers|World: Added Thinkers utility method for counting active thinkers
- 01:11 Revision 1a396ec5 (github): BspNode|World: Added BspNode method for calculating the height of a subtree
- 01:08 Revision 2d173d51 (github): libdeng2|Windows: Export Binder, NativeFunctionSpec
2014-01-17
- 14:55 Revision ed55cfc7 (github): Fixed|UI|Stereo 3D: Map mouse wheel position to left/right frames
- Mouse buttons and position was already mapped, however the wheel
position was not. - 13:03 Revision cda00fa7 (github): Client|Script: Added the script binding App.quit()
- 12:49 Revision 30d05b26 (github): Cleanup
- 12:34 Revision c544aa6e (github): Refactor|Script: Revised naming convention of native script functions
- Now using “Function_” as the prefix.
- 12:33 Revision b2c31bdb (github): Fixed|All Games: Errors in release build
- Log entries were being printed with debug-only variables or functions.
- 09:07 Revision 2acf8cd8 (github): Refactor|Client|libgui: Use Binder to manage script bindings
- The native implementation of the functions doesn’t need to check
for argument count as that is already checked earlie...
2014-01-16
- 20:34 Revision e6e1dd58 (github): libdeng2|Script: Utilities for easier creation of native script functions
- Binder automates the tasks for registering and unregistering native
entry points that appear as script functions. - 20:34 Revision 87589314 (github): Refactor|Client|libgui: Use Binder to manage script bindings
- 19:38 Revision 0a317ebf (github): Fixed|Renderer: Model particles not affected by dynamic lights, plus cleanup
- The particle renderer used the wrong axes when determining the BSP
leaf at the origin of a given particle (Z and Y we... - 18:00 Bug #1713 (Rejected): [HEXEN] Guardian of Steel switches not animating as intended
- 17:51 Bug #1713: [HEXEN] Guardian of Steel switches not animating as intended
- LOL, I just tried it and pressing it once works in original as well, this can be closed, sorry i wasted your time :s
- 17:44 Bug #1713: [HEXEN] Guardian of Steel switches not animating as intended
- I'm sorry, I was wrong. You actually have to only press it once now, instead of 2 times like in original Hexen. So it...
- 17:38 Bug #1713: [HEXEN] Guardian of Steel switches not animating as intended
- Err, no. That's not just animation. In 1.13.2 the switches don't move the wall for me no matter how many times I pres...
- 17:05 Bug #1713: [HEXEN] Guardian of Steel switches not animating as intended
- Ah, you are referring to the animation of the switch texture, rather than it's function. My apologies for misinterpre...
- 16:45 Bug #1713: [HEXEN] Guardian of Steel switches not animating as intended
- I'm pretty sure there were a couple more of switches like that ahead in the game also, can't remember which levels th...
- 16:36 Bug #1713: [HEXEN] Guardian of Steel switches not animating as intended
- vermil wrote:
> The switches that move the walls appear to be functioning fine for me; they are repeatable, activate... - 14:53 Bug #1713: [HEXEN] Guardian of Steel switches not animating as intended
- To which switches do you refer to?
The switches that move the walls appear to be functioning fine for me; they are... - 13:55 Bug #1713 (Rejected): [HEXEN] Guardian of Steel switches not animating as intended
- The switches in the Guardian of Steel should only work when you press them 2 times in a row, it will make them to hol...
- 17:26 Bug #1714: Multiplayer weapons aren't remaining in play
- Preplaced weapons I mean. Not ones dropped by various bad guys.
- 17:25 Bug #1714 (Closed): Multiplayer weapons aren't remaining in play
- In Deathmatch mode 1 and Co-operative, weapon pickups are supposed to not be removed from play once picked up, though...
- 12:27 Bug #1712 (Closed): [Windows] VSync cannot be turned off / forced fps limit (even in windowed mode)
- Switching VSync on or off doesn't seem to do anything, same with console command. It happens in both fullscreen and w...
2014-01-15
- 13:59 Revision eeec1ae5 (github): Merge branch 'master' of github.com:skyjake/Doomsday-Engine
- 13:59 Revision 25605e10 (github): libdeng2|StringPool: The 'data' argument of StringPool::iterate() is now optional
- 13:54 Revision f47d5089 (github): Cleanup|Client: Log entry
- 13:51 Revision 95e2230d (github): World: Log a separate warning for each unknown material
- Now that the warnings produce collated alerts it is better to log
each unknown material encountered during map conver... - 12:56 Revision 681410ac (github): Merge branch 'master' of github.com:skyjake/Doomsday-Engine
- 12:55 Revision 189fce2b (github): DehReader|Fixed: Parse error reading a [PARS] block using doom2 notation
- 12:53 Revision f38566b9 (github): Fixed|libdeng2: Warning in release build
- 11:02 Revision d830a002 (github): Refactor|Generator|World: Made private more members of Generator
- 10:05 Revision 48022294 (github): Windows: Fixed build (platform header inclusion order)
- 09:35 Revision f79dfba1 (github): Default Style|OS X: Default UI font
- On second thought, Open Sans only works with Qt 5.2; with Qt 4.8
it doesn’t get a bold weight at all. Better stick wi... - 09:30 Revision a3ad1f8b (github): API: Relocated internal thinker functions from public API header
- These belong in an internal header.
- 09:12 Revision 0da7b89a (github): Merge branch 'master' of ssh://github.com/skyjake/Doomsday-Engine
- 09:12 Revision eb64c530 (github): Cleanup|Log|libgui|libappfw|Console: Log message cleanup
- 09:11 Revision d2a4a63d (github): Default Style|OS X: Use Open Sans as UI font (like on Windows)
- Standardizing appearance. Also, Qt is having real difficulties
picking the right font weights on Mavericks, which mak... - 09:09 Revision 628fdc4d (github): UI|libgui: Disable widget background blurring when a game is loaded
- Game rendering is simply not efficient enough to be done multiple
times per frame => perf hit is too big. - 09:05 Revision cc995755 (github): Refactor|World: Renamed p_particle.h/cpp to generator.h/cpp respectively
- Also added a convenience header for Generator.
- 08:49 Revision 54d54b47 (github): Refactor|World: Continued splitting up p_particle.h/cpp
- 07:56 Revision 2a3ce816 (github): Client: Cleanup
- 07:26 Revision e17ccd39 (github): Cleanup: Moved global validCount to WorldSystem; r_main.h/cpp now client-only
- The server executable no longer depends on any source file in the
render domain.
2014-01-14
- 20:10 Revision 11357422 (github): libgui: Fonts can specify alternate families for different weights
- However, at least on OS X 10.9 it seems Qt is currently unable to
select a light font no matter which mechanism is used. - 18:24 Revision 6bb992be (github): Tests|OS X: Test deployment with Qt 5, failed assert in test_log
- 18:23 Revision ccb1c893 (github): FMOD|Cleanup: Log entries containing pointer values
- 14:52 Revision f8a662d5 (github): Fixed|OS X|Qt: Bundling Qt 5 frameworks in Doomsday.app
- 12:24 Revision 53172f14 (github): Log|Resources|libgui: Improved log output
- 12:24 Revision 01d5e980 (github): libdeng2: Added a header for some printable character symbols
- Unicode if possible.
- 11:51 Revision 8e54a19e (github): Fixed|UI: Use GLFramebuffer when drawing a blurred widget background
- The game renderer assumes that both color and depth attachments are
being used. - 11:10 Feature #1700: Warning/error alerts
- The UI (alert dialog) still needs some polishing:
* -Don't show entries before they ready to be drawn.-
* -Smoothly... - 11:09 Feature #1708 (Closed): Logging by domain (with filtering)
- Maintaining appropriate log levels and other metadata is something we need to do on ongoing basis, though.
- 10:34 Revision fab3c296 (github): libgui|GLFramebuffer: Use a Property to track the default sample count
- All existing GLFramebuffer instances observe the default sample count
and update their contents accordingly when it’s... - 10:33 Revision 8d7272d7 (github): Console: Disabled warning about ‘playdemo’
- Demos are currently not supported, so no point in warning about them.
- 10:32 Revision db1f6e12 (github): libdeng2: Added the Property utility for observable native variables
- Unlike script Variables, Property deals with native value types
and cannot accept more than one type of value.
2014-01-13
- 21:31 Revision e2ebe9f6 (github): Fixed|Particles: Out-of-bounds memory access
- Apparently spinIndex was sometimes incorrectly calculated on
p_particle.cpp:794. - 17:49 Revision 7a339f5f (github): Cleanup: Log entries, levels, and domains (continued)
- 17:30 Revision 5e9ac8ae (github): Cleanup: Log entries, levels, and domains (continued)
- 17:07 Revision e917e915 (github): Cleanup|All Games: Removed dead code related to player controls
- The g_ctrl.* files were not needed any more since libcommon handles
player control setup. - 17:07 Revision aca7c3b5 (github): Cleanup|API: Removed all use of Con_Message, removed from public API
- Also removed Con_PrintRuler. The libdeng2 C API now has a macro for
making escape codes (DE2_ESC). - 14:54 Revision 18349923 (github): libappfw: Moved dialogs to a separate source folder
- They were kept separate in the client, and it's good to keep them
separate in libappfw. - 13:12 Revision d5184f20 (github): Map|Client: Continued cleaning up particle generator management
- 10:34 Revision 16a8bfdf (github): Renderer: Relocated generator visibility flags to viewports.cpp, use QBitArray
- 10:11 Revision 1f858131 (github): Map: Cleanup
- Todo: Is it really necessary to link generators to sectors?
- 09:27 Revision 0b33995a (github): Merge branch 'master' of github.com:skyjake/Doomsday-Engine
- 09:27 Revision 18269b4b (github): Map|Client: Continued tearing down the clientside Generators abstraction
- 08:55 Revision 277d6139 (github): qmake|OS X: deng_noclient is not available in the OS X build
- On the Mac, the client app and libs need to be built anyway.
- 08:52 Revision ec69976f (github): Fixed: Library build order
- libappfw requires libdeng1.
- 08:45 Revision a54a63a3 (github): Map|Client: Moved the map's Generator collection into de::Map
- Todo: Continue tearing down this now obsolete abstraction.
- 07:29 Revision 6523743c (github): Renderer: Cleanup
- 06:57 Revision e5074bfb (github): Map|Client: Fully encapsulate the clientside Generators collection within de::Map
- Also began remodeling the particle generator representation toward a
more object-oriented model (note that a particle... - 01:32 Revision bae6c5e0 (github): Cleanup|World: Added Thinker_Map() (returns the map in which the thinker exists)
- Note that presently this merely resolves to a WorldSystem::map() call.
- 00:44 Revision 5ec443f7 (github): Hand|World: Updated wrt WorldSystem name change, fix compiler warning
- 00:37 Revision 5027182b (github): Refactor: Renamed World as WorldSystem, derive from de::System
Also available in: Atom