game_machine 0.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (273) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +4 -0
  3. data/Gemfile.lock +72 -0
  4. data/Rakefile +38 -0
  5. data/bin/game_machine +79 -0
  6. data/config/cluster.conf +65 -0
  7. data/config/config.example.yml +93 -0
  8. data/config/game_messages.proto +45 -0
  9. data/config/messages.proto +339 -0
  10. data/config/regions.example.yml +9 -0
  11. data/config/standalone.conf +36 -0
  12. data/db/do_not_delete +0 -0
  13. data/game_machine.gemspec +38 -0
  14. data/games/example/boot.rb +6 -0
  15. data/games/example/data/game_data.yml +13 -0
  16. data/games/example/lib/aggressive_npc.rb +176 -0
  17. data/games/example/lib/authentication_handler.rb +69 -0
  18. data/games/example/lib/chatbot.rb +61 -0
  19. data/games/example/lib/combat_controller.rb +145 -0
  20. data/games/example/lib/example_controller.rb +21 -0
  21. data/games/example/lib/game.rb +85 -0
  22. data/games/example/lib/models/attack.rb +9 -0
  23. data/games/example/lib/models/combat_update.rb +11 -0
  24. data/games/example/lib/models/player_command.rb +7 -0
  25. data/games/example/lib/models/user.rb +11 -0
  26. data/games/example/lib/models/vitals.rb +17 -0
  27. data/games/example/lib/npc.rb +111 -0
  28. data/games/example/lib/npc_group.rb +42 -0
  29. data/games/example/lib/npc_movement.rb +116 -0
  30. data/games/example/lib/player_manager.rb +58 -0
  31. data/games/example/lib/player_register.rb +80 -0
  32. data/games/example/lib/tracking_handler.rb +17 -0
  33. data/games/example/lib/zone_manager.rb +57 -0
  34. data/games/preload.rb +8 -0
  35. data/integration_tests/basic_spec.rb +68 -0
  36. data/integration_tests/bot_spec.rb +18 -0
  37. data/integration_tests/chat_spec.rb +45 -0
  38. data/integration_tests/distributed_spec.rb +34 -0
  39. data/integration_tests/entity_tracking_spec.rb +48 -0
  40. data/integration_tests/mono_spec.rb +16 -0
  41. data/integration_tests/objectdb_spec.rb +55 -0
  42. data/integration_tests/tcp_client_spec.rb +71 -0
  43. data/integration_tests/udp_client_spec.rb +61 -0
  44. data/integration_tests/udp_spec.rb +20 -0
  45. data/integration_tests/udt_client_spec.rb +23 -0
  46. data/integration_tests/udt_spec.rb +31 -0
  47. data/java/.gitignore +1 -0
  48. data/java/build.gradle +93 -0
  49. data/java/component.erb +396 -0
  50. data/java/gradle.properties +6 -0
  51. data/java/gradle/wrapper/gradle-wrapper.jar +0 -0
  52. data/java/gradle/wrapper/gradle-wrapper.properties +6 -0
  53. data/java/gradlew +164 -0
  54. data/java/gradlew.bat +90 -0
  55. data/java/local_lib/protostuff-compiler-1.0.7-jarjar.jar +0 -0
  56. data/java/settings.gradle +2 -0
  57. data/java/src/main/java/com/game_machine/core/ActorFactory.java +25 -0
  58. data/java/src/main/java/com/game_machine/core/ActorUtil.java +39 -0
  59. data/java/src/main/java/com/game_machine/core/CommandProxy.java +9 -0
  60. data/java/src/main/java/com/game_machine/core/EntitySerializer.java +66 -0
  61. data/java/src/main/java/com/game_machine/core/EventStreamHandler.java +43 -0
  62. data/java/src/main/java/com/game_machine/core/GameMachineLoader.java +25 -0
  63. data/java/src/main/java/com/game_machine/core/Grid.java +195 -0
  64. data/java/src/main/java/com/game_machine/core/GridValue.java +30 -0
  65. data/java/src/main/java/com/game_machine/core/IActorFactory.java +7 -0
  66. data/java/src/main/java/com/game_machine/core/NetMessage.java +28 -0
  67. data/java/src/main/java/com/game_machine/core/UdpServer.java +97 -0
  68. data/java/src/main/java/com/game_machine/core/UdpServerHandler.java +90 -0
  69. data/java/src/main/resources/game_machine.java.stg +738 -0
  70. data/java/src/main/resources/logback.xml +14 -0
  71. data/java/src/main/resources/logging.properties +3 -0
  72. data/java/src/main/resources/protostuff.properties +7 -0
  73. data/lib/game_machine.rb +85 -0
  74. data/lib/game_machine/actor.rb +7 -0
  75. data/lib/game_machine/actor/base.rb +184 -0
  76. data/lib/game_machine/actor/builder.rb +108 -0
  77. data/lib/game_machine/actor/development.rb +31 -0
  78. data/lib/game_machine/actor/factory.rb +35 -0
  79. data/lib/game_machine/actor/mono_actor.rb +89 -0
  80. data/lib/game_machine/actor/ref.rb +81 -0
  81. data/lib/game_machine/actor/reloadable.rb +98 -0
  82. data/lib/game_machine/actor/system.rb +32 -0
  83. data/lib/game_machine/akka.rb +98 -0
  84. data/lib/game_machine/app_config.rb +49 -0
  85. data/lib/game_machine/application.rb +181 -0
  86. data/lib/game_machine/auth_handlers/base.rb +21 -0
  87. data/lib/game_machine/auth_handlers/public.rb +34 -0
  88. data/lib/game_machine/bot/chat.rb +66 -0
  89. data/lib/game_machine/bot/client.rb +54 -0
  90. data/lib/game_machine/client_manager.rb +204 -0
  91. data/lib/game_machine/clients.rb +4 -0
  92. data/lib/game_machine/clients/client.rb +45 -0
  93. data/lib/game_machine/clients/tcp_client.rb +25 -0
  94. data/lib/game_machine/clients/test_client.rb +151 -0
  95. data/lib/game_machine/clients/udp_client.rb +25 -0
  96. data/lib/game_machine/clients/udt_client.rb +34 -0
  97. data/lib/game_machine/cluster_monitor.rb +115 -0
  98. data/lib/game_machine/commands.rb +23 -0
  99. data/lib/game_machine/commands/base.rb +21 -0
  100. data/lib/game_machine/commands/chat_commands.rb +88 -0
  101. data/lib/game_machine/commands/datastore_commands.rb +60 -0
  102. data/lib/game_machine/commands/grid_commands.rb +35 -0
  103. data/lib/game_machine/commands/message_helper.rb +25 -0
  104. data/lib/game_machine/commands/misc_commands.rb +29 -0
  105. data/lib/game_machine/commands/navigation_commands.rb +24 -0
  106. data/lib/game_machine/commands/player_commands.rb +28 -0
  107. data/lib/game_machine/commands/proxy.rb +16 -0
  108. data/lib/game_machine/console.rb +3 -0
  109. data/lib/game_machine/console/build.rb +74 -0
  110. data/lib/game_machine/console/install.rb +92 -0
  111. data/lib/game_machine/console/server.rb +120 -0
  112. data/lib/game_machine/data_store.rb +52 -0
  113. data/lib/game_machine/data_stores/couchbase.rb +18 -0
  114. data/lib/game_machine/data_stores/mapdb.rb +49 -0
  115. data/lib/game_machine/data_stores/memory.rb +35 -0
  116. data/lib/game_machine/data_stores/redis.rb +46 -0
  117. data/lib/game_machine/endpoints.rb +6 -0
  118. data/lib/game_machine/endpoints/mono_gateway.rb +87 -0
  119. data/lib/game_machine/endpoints/tcp.rb +51 -0
  120. data/lib/game_machine/endpoints/tcp_handler.rb +75 -0
  121. data/lib/game_machine/endpoints/udp.rb +88 -0
  122. data/lib/game_machine/endpoints/udp_incoming.rb +113 -0
  123. data/lib/game_machine/endpoints/udp_outgoing.rb +46 -0
  124. data/lib/game_machine/game_loader.rb +46 -0
  125. data/lib/game_machine/game_systems.rb +14 -0
  126. data/lib/game_machine/game_systems/agents/controller.rb +118 -0
  127. data/lib/game_machine/game_systems/chat.rb +256 -0
  128. data/lib/game_machine/game_systems/chat_manager.rb +108 -0
  129. data/lib/game_machine/game_systems/chat_topic.rb +36 -0
  130. data/lib/game_machine/game_systems/devnull.rb +13 -0
  131. data/lib/game_machine/game_systems/entity_loader.rb +12 -0
  132. data/lib/game_machine/game_systems/entity_tracking.rb +133 -0
  133. data/lib/game_machine/game_systems/local_echo.rb +16 -0
  134. data/lib/game_machine/game_systems/objectdb_proxy.rb +61 -0
  135. data/lib/game_machine/game_systems/private_chat.rb +20 -0
  136. data/lib/game_machine/game_systems/region_manager.rb +91 -0
  137. data/lib/game_machine/game_systems/region_service.rb +94 -0
  138. data/lib/game_machine/game_systems/region_settings.rb +13 -0
  139. data/lib/game_machine/game_systems/remote_echo.rb +14 -0
  140. data/lib/game_machine/game_systems/stress_test.rb +21 -0
  141. data/lib/game_machine/grid.rb +60 -0
  142. data/lib/game_machine/grid_replicator.rb +31 -0
  143. data/lib/game_machine/handlers/authentication.rb +55 -0
  144. data/lib/game_machine/handlers/game.rb +63 -0
  145. data/lib/game_machine/handlers/request.rb +80 -0
  146. data/lib/game_machine/hashring.rb +48 -0
  147. data/lib/game_machine/helpers/game_message.rb +159 -0
  148. data/lib/game_machine/helpers/state_machine.rb +29 -0
  149. data/lib/game_machine/java_lib.rb +51 -0
  150. data/lib/game_machine/logger.rb +39 -0
  151. data/lib/game_machine/message_buffer.rb +58 -0
  152. data/lib/game_machine/message_queue.rb +63 -0
  153. data/lib/game_machine/model.rb +125 -0
  154. data/lib/game_machine/models.rb +3 -0
  155. data/lib/game_machine/models/player_status_update.rb +8 -0
  156. data/lib/game_machine/models/region.rb +9 -0
  157. data/lib/game_machine/mono_server.rb +20 -0
  158. data/lib/game_machine/navigation.rb +4 -0
  159. data/lib/game_machine/navigation/detour.rb +20 -0
  160. data/lib/game_machine/navigation/detour_navmesh.rb +53 -0
  161. data/lib/game_machine/navigation/detour_path.rb +53 -0
  162. data/lib/game_machine/navigation/path.rb +31 -0
  163. data/lib/game_machine/object_db.rb +67 -0
  164. data/lib/game_machine/protobuf.rb +6 -0
  165. data/lib/game_machine/protobuf/game_messages.rb +24 -0
  166. data/lib/game_machine/protobuf/generate.rb +113 -0
  167. data/lib/game_machine/protobuf_extensions/entity_helper.rb +11 -0
  168. data/lib/game_machine/reloadable_monitor.rb +26 -0
  169. data/lib/game_machine/restart_watcher.rb +17 -0
  170. data/lib/game_machine/ruby_extensions/nilclass.rb +10 -0
  171. data/lib/game_machine/ruby_extensions/string.rb +17 -0
  172. data/lib/game_machine/scheduler.rb +23 -0
  173. data/lib/game_machine/securerandom.rb +6 -0
  174. data/lib/game_machine/settings.rb +11 -0
  175. data/lib/game_machine/system_monitor.rb +19 -0
  176. data/lib/game_machine/system_stats.rb +24 -0
  177. data/lib/game_machine/uniqueid.rb +23 -0
  178. data/lib/game_machine/vector.rb +95 -0
  179. data/lib/game_machine/version.rb +3 -0
  180. data/lib/game_machine/write_behind_cache.rb +164 -0
  181. data/mono/bin/csharp/common.xslt +109 -0
  182. data/mono/bin/csharp/csharp.xslt +628 -0
  183. data/mono/bin/csharp/descriptor.proto +533 -0
  184. data/mono/bin/csharp/protobuf-net.dll +0 -0
  185. data/mono/bin/csharp/protobuf-net.pdb +0 -0
  186. data/mono/bin/csharp/protobuf-net.xml +2879 -0
  187. data/mono/bin/csharp/protogen.exe.config +3 -0
  188. data/mono/bin/csharp/protogen.pdb +0 -0
  189. data/mono/bin/csharp/protogen_csharp.exe +0 -0
  190. data/mono/bin/csharp/vb.xslt +745 -0
  191. data/mono/bin/csharp/xml.xslt +26 -0
  192. data/mono/server/Makefile +6 -0
  193. data/mono/server/NLog.config +12 -0
  194. data/mono/server/NLog.dll +0 -0
  195. data/mono/server/actor.cs +37 -0
  196. data/mono/server/build.bat +3 -0
  197. data/mono/server/cscompmgd.dll +0 -0
  198. data/mono/server/iactor.cs +11 -0
  199. data/mono/server/message_router.cs +67 -0
  200. data/mono/server/message_util.cs +29 -0
  201. data/mono/server/messages.cs +1888 -0
  202. data/mono/server/protobuf-net.dll +0 -0
  203. data/mono/server/proxy_client.cs +73 -0
  204. data/mono/server/proxy_server.cs +30 -0
  205. data/mono/server/test_actor.cs +33 -0
  206. data/pathfinding/bin/premake4 +0 -0
  207. data/pathfinding/include/mesh_loader.h +28 -0
  208. data/pathfinding/include/pathfind.h +167 -0
  209. data/pathfinding/main.cpp +39 -0
  210. data/pathfinding/mesh_loader.cpp +108 -0
  211. data/pathfinding/pathfind.cpp +174 -0
  212. data/pathfinding/pathfinder.cs +66 -0
  213. data/pathfinding/premake4.lua +109 -0
  214. data/script/server.sh +109 -0
  215. data/script/watch.sh +11 -0
  216. data/spec/actor/actor_spec.rb +73 -0
  217. data/spec/actor/builder_spec.rb +56 -0
  218. data/spec/actor/ref_spec.rb +83 -0
  219. data/spec/application_spec.rb +7 -0
  220. data/spec/client_manager_spec.rb +171 -0
  221. data/spec/commands/chat_commands_spec.rb +38 -0
  222. data/spec/commands/datastore_commands_spec.rb +91 -0
  223. data/spec/commands/grid_commands_spec.rb +37 -0
  224. data/spec/commands/navigation_commands_spec.rb +51 -0
  225. data/spec/commands/player_commands_spec.rb +48 -0
  226. data/spec/commands_spec.rb +38 -0
  227. data/spec/data_stores/mapdb_spec.rb +46 -0
  228. data/spec/data_stores/redis_spec.rb +44 -0
  229. data/spec/game_systems/agents/controller_spec.rb +84 -0
  230. data/spec/game_systems/agents/test_agent.rb +10 -0
  231. data/spec/game_systems/agents/test_agent_config.rb +29 -0
  232. data/spec/game_systems/chat_manager_spec.rb +66 -0
  233. data/spec/game_systems/chat_spec.rb +187 -0
  234. data/spec/game_systems/entity_tracking_spec.rb +64 -0
  235. data/spec/game_systems/region_manager_spec.rb +138 -0
  236. data/spec/grid_spec.rb +37 -0
  237. data/spec/handlers/authentication_spec.rb +36 -0
  238. data/spec/handlers/game_spec.rb +49 -0
  239. data/spec/handlers/request_spec.rb +65 -0
  240. data/spec/hashring_spec.rb +59 -0
  241. data/spec/integration_helper.rb +120 -0
  242. data/spec/java_grid_spec.rb +89 -0
  243. data/spec/message_buffer_spec.rb +67 -0
  244. data/spec/message_expectations.rb +47 -0
  245. data/spec/message_queue_spec.rb +23 -0
  246. data/spec/misc_spec.rb +71 -0
  247. data/spec/model_spec.rb +103 -0
  248. data/spec/mono_spec.rb +36 -0
  249. data/spec/mono_test.rb +18 -0
  250. data/spec/navigation/detour_navmesh_spec.rb +34 -0
  251. data/spec/navigation/detour_path_spec.rb +25 -0
  252. data/spec/spec_helper.rb +40 -0
  253. data/spec/udp_server_spec.rb +10 -0
  254. data/spec/write_behind_cache_spec.rb +109 -0
  255. data/web/app.rb +131 -0
  256. data/web/config/trinidad.yml +4 -0
  257. data/web/controllers/auth_controller.rb +19 -0
  258. data/web/controllers/base_controller.rb +16 -0
  259. data/web/controllers/index_controller.rb +7 -0
  260. data/web/controllers/log_controller.rb +47 -0
  261. data/web/controllers/messages_controller.rb +59 -0
  262. data/web/controllers/player_register_controller.rb +15 -0
  263. data/web/log/development.log +1339 -0
  264. data/web/tmp/restart.txt +0 -0
  265. data/web/views/game_messages.haml +45 -0
  266. data/web/views/index.haml +6 -0
  267. data/web/views/layout.haml +41 -0
  268. data/web/views/logs.haml +32 -0
  269. data/web/views/player_register.haml +22 -0
  270. data/web/views/player_registered.haml +2 -0
  271. data/web/views/register_layout.haml +22 -0
  272. data/web/views/restart.haml +35 -0
  273. metadata +576 -0
File without changes
@@ -0,0 +1,45 @@
1
+ .container-fluid
2
+ .row
3
+ .col-xs-6
4
+ - if @messages == :game
5
+ .h4
6
+ Add, update, or remove messages using the editor.
7
+ %ul
8
+ %li
9
+ If running Game Machine in loop mode, saving this file will restart
10
+ the server with the new message changes
11
+ %li
12
+ If running under windows, a new messages.cs will be generated and
13
+ placed in the Game Machine root folder. You can set where this file
14
+ is written to by changing protogen_out_dir in config/config.yml
15
+ %li
16
+ If you have a syntax error in the message file you will not see any
17
+ errors. The system will simply not regenerate new code. The fix
18
+ for this is platform specific, we are working on it.
19
+ - else
20
+ .h4
21
+ This is the combined list of built in plus user modifiable messages.
22
+ This is what the protofile that you can download contains.
23
+ .row
24
+ .col-xs-6
25
+ %div#editor
26
+ .row{:style => 'margin-top:10px;'}
27
+ .col-xs-6
28
+ %form{:action => '/messages/game', :method => 'POST'}
29
+ .form-group
30
+ %input{:id => 'editor_content', :type => 'hidden', :name => 'game_messages', :value=>"#{@content}"}
31
+ -if @messages == :game
32
+ %button{:type=>"submit", :class => "btn btn-primary"}
33
+ Save Messages
34
+ %script{:src => 'http://cdnjs.cloudflare.com/ajax/libs/ace/1.1.3/ace.js'}
35
+ :javascript
36
+ $(document).ready(function() {
37
+ var editor = ace.edit("editor");
38
+ editor.setTheme("ace/theme/textmate");
39
+ editor.setOptions({ maxLines: 500, minLines: 40, autoScrollEditorIntoView: true });
40
+ editor.setValue($('#editor_content').val());
41
+ editor.getSession().setMode("ace/mode/protobuf");
42
+ editor.getSession().on('change', function(e) {
43
+ $('#editor_content').val(editor.getValue());
44
+ });
45
+ });
@@ -0,0 +1,6 @@
1
+
2
+ .h2
3
+ Welcome to Game Machine
4
+ - if @restarted
5
+ .h4{:style => 'color:green'}
6
+ Game Machine restarted successfully
@@ -0,0 +1,41 @@
1
+ !!! 5
2
+ %html
3
+ %head
4
+ %meta{:charset=>"utf-8"}
5
+ %meta{'http-equiv'=>"X-UA-Compatible", :content=>"IE=edge"}
6
+ %meta{:name=>"viewport", :content=>"width=device-width, initial-scale=1"}
7
+ %link{:rel=>"stylesheet", :href=>"//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css"}
8
+ %link{:rel=>"stylesheet", :href=>"//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap-theme.min.css"}
9
+ %script{:src=>"https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"}
10
+ %script{:src=>"//netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"}
11
+ %body
12
+ .container-fluid
13
+ .row
14
+ .col-xs-12
15
+ .h2
16
+ %a{:href => '/'} Game Machine
17
+ .container-fluid
18
+ .row
19
+ .col-xs-2
20
+ .menu
21
+ .messages
22
+ .h4 Players
23
+ %ul
24
+ %li
25
+ %a{:href => '/player_register', :target => '_blank'} Register player
26
+ .h4 Messages
27
+ %ul
28
+ %li
29
+ %a{:href => '/messages/game'} Edit game messages
30
+ %li
31
+ %a{:href => '/messages/all?format=proto'} Download protofile
32
+ %li
33
+ %a{:href => '/messages/all?format=view'} View all messages
34
+ .logs
35
+ .h4 Logs
36
+ %ul
37
+ %li
38
+ %a{:href => '/logs'} System logs
39
+ .col-xs-9
40
+ = yield
41
+ .col-xs-1
@@ -0,0 +1,32 @@
1
+ .container-fluid
2
+ .row
3
+ - @logtypes.each do |logtype,name|
4
+ .col-xs-2
5
+ .h4
6
+ %a{:href => "/logs?logtype=#{logtype}"}
7
+ = name
8
+ .container-fluid
9
+ .row
10
+ .col-xs-12
11
+ .h4
12
+ = @logtypes[@logtype]
13
+ .row
14
+ .col-xs-12
15
+ %table.table.table-condensed.table-bordered
16
+ - if @logtype == :app
17
+ %tr
18
+ %th Timestamp
19
+ %th Severity
20
+ %th Service
21
+ %th Message
22
+ - @content.each do |line|
23
+ %tr
24
+ %td= line[0]
25
+ %td= line[1]
26
+ %td= line[2]
27
+ %td= line[3]
28
+ - else
29
+ - @content.each do |line|
30
+ %tr
31
+ %td= line
32
+
@@ -0,0 +1,22 @@
1
+
2
+ .container-fluid
3
+ .row
4
+ .col-xs-6
5
+ - if @content['error']
6
+ .h4
7
+ %ul
8
+ - @content['error'].each do |field,messages|
9
+ %li
10
+ = field
11
+ %ul
12
+ - messages.each do |message|
13
+ %li
14
+ = message
15
+ %form{:role=>"form", :action=>'/player_register.html',:method => 'POST'}
16
+ .form-group
17
+ %label{:for=>"username"} Username
18
+ %input.form-control{:type => :text, :name=>"username", :placeholder=>"Enter username"}
19
+ .form-group
20
+ %label{:for=>"password"} Password
21
+ %input.form-control{:type=>"password", :name=>"password", :placeholder=>"Enter password"}
22
+ %button.btn.btn-default{:type => 'submit'} Submit
@@ -0,0 +1,2 @@
1
+ .h2
2
+ = @content['success']
@@ -0,0 +1,22 @@
1
+ !!! 5
2
+ %html
3
+ %head
4
+ %meta{:charset=>"utf-8"}
5
+ %meta{'http-equiv'=>"X-UA-Compatible", :content=>"IE=edge"}
6
+ %meta{:name=>"viewport", :content=>"width=device-width, initial-scale=1"}
7
+ %link{:rel=>"stylesheet", :href=>"//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css"}
8
+ %link{:rel=>"stylesheet", :href=>"//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap-theme.min.css"}
9
+ %script{:src=>"https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"}
10
+ %script{:src=>"//netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"}
11
+ %body
12
+ .container-fluid
13
+ .row
14
+ .col-xs-12
15
+ .h2
16
+ %a{:href => '/'} Game Machine
17
+ .container-fluid
18
+ .row
19
+ .col-xs-1
20
+ .col-xs-9
21
+ = yield
22
+ .col-xs-2
@@ -0,0 +1,35 @@
1
+
2
+ .h3
3
+ Game Machine is restarting...
4
+ .h4
5
+ Specifically, the following is happening
6
+ %ul
7
+ %li
8
+ Protocol buffer classes are being generated
9
+ %li
10
+ Java message code is recompiled
11
+ %li
12
+ If on windows, a new messages.cs is generated
13
+ %li
14
+ Game Machine is restarted
15
+ .h4
16
+ You will be redirected to the index page once the restart is complete
17
+ :javascript
18
+ $(document).ready(function() {
19
+ (function poll(){
20
+ setTimeout(function(){
21
+ $.ajax({ url: "/alive",
22
+ error: function(xhr,status,error){
23
+ poll();
24
+ },
25
+ success: function(data){
26
+ window.location = "/?restarted=true";
27
+ //Update your dashboard gauge
28
+ //salesGauge.setValue(data.value);
29
+
30
+ //Setup the next poll recursively
31
+ poll();
32
+ }, dataType: "json"});
33
+ }, 2000);
34
+ })();
35
+ });
metadata ADDED
@@ -0,0 +1,576 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: game_machine
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.8
5
+ platform: ruby
6
+ authors:
7
+ - Chris Ochs
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-06-28 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: i18n
15
+ version_requirements: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '>='
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ requirement: !ruby/object:Gem::Requirement
21
+ requirements:
22
+ - - '>='
23
+ - !ruby/object:Gem::Version
24
+ version: '0'
25
+ prerelease: false
26
+ type: :runtime
27
+ - !ruby/object:Gem::Dependency
28
+ name: rjack-logback
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ requirement: !ruby/object:Gem::Requirement
35
+ requirements:
36
+ - - '>='
37
+ - !ruby/object:Gem::Version
38
+ version: '0'
39
+ prerelease: false
40
+ type: :runtime
41
+ - !ruby/object:Gem::Dependency
42
+ name: settingslogic
43
+ version_requirements: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '>='
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ requirement: !ruby/object:Gem::Requirement
49
+ requirements:
50
+ - - '>='
51
+ - !ruby/object:Gem::Version
52
+ version: '0'
53
+ prerelease: false
54
+ type: :runtime
55
+ - !ruby/object:Gem::Dependency
56
+ name: consistent-hashing
57
+ version_requirements: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ requirement: !ruby/object:Gem::Requirement
63
+ requirements:
64
+ - - '>='
65
+ - !ruby/object:Gem::Version
66
+ version: '0'
67
+ prerelease: false
68
+ type: :runtime
69
+ - !ruby/object:Gem::Dependency
70
+ name: json
71
+ version_requirements: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - '>='
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ requirement: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - '>='
79
+ - !ruby/object:Gem::Version
80
+ version: '0'
81
+ prerelease: false
82
+ type: :runtime
83
+ - !ruby/object:Gem::Dependency
84
+ name: ffi
85
+ version_requirements: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - '>='
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ requirement: !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - '>='
93
+ - !ruby/object:Gem::Version
94
+ version: '0'
95
+ prerelease: false
96
+ type: :runtime
97
+ - !ruby/object:Gem::Dependency
98
+ name: sinatra
99
+ version_requirements: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - '>='
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ requirement: !ruby/object:Gem::Requirement
105
+ requirements:
106
+ - - '>='
107
+ - !ruby/object:Gem::Version
108
+ version: '0'
109
+ prerelease: false
110
+ type: :runtime
111
+ - !ruby/object:Gem::Dependency
112
+ name: sinatra-contrib
113
+ version_requirements: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ requirement: !ruby/object:Gem::Requirement
119
+ requirements:
120
+ - - '>='
121
+ - !ruby/object:Gem::Version
122
+ version: '0'
123
+ prerelease: false
124
+ type: :runtime
125
+ - !ruby/object:Gem::Dependency
126
+ name: haml
127
+ version_requirements: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - '>='
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ requirement: !ruby/object:Gem::Requirement
133
+ requirements:
134
+ - - '>='
135
+ - !ruby/object:Gem::Version
136
+ version: '0'
137
+ prerelease: false
138
+ type: :runtime
139
+ - !ruby/object:Gem::Dependency
140
+ name: webrick
141
+ version_requirements: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - '>='
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ requirement: !ruby/object:Gem::Requirement
147
+ requirements:
148
+ - - '>='
149
+ - !ruby/object:Gem::Version
150
+ version: '0'
151
+ prerelease: false
152
+ type: :runtime
153
+ - !ruby/object:Gem::Dependency
154
+ name: rake
155
+ version_requirements: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - '>='
158
+ - !ruby/object:Gem::Version
159
+ version: '0'
160
+ requirement: !ruby/object:Gem::Requirement
161
+ requirements:
162
+ - - '>='
163
+ - !ruby/object:Gem::Version
164
+ version: '0'
165
+ prerelease: false
166
+ type: :development
167
+ - !ruby/object:Gem::Dependency
168
+ name: rspec
169
+ version_requirements: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - '>='
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
174
+ requirement: !ruby/object:Gem::Requirement
175
+ requirements:
176
+ - - '>='
177
+ - !ruby/object:Gem::Version
178
+ version: '0'
179
+ prerelease: false
180
+ type: :development
181
+ - !ruby/object:Gem::Dependency
182
+ name: rspec-mocks
183
+ version_requirements: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - '>='
186
+ - !ruby/object:Gem::Version
187
+ version: '0'
188
+ requirement: !ruby/object:Gem::Requirement
189
+ requirements:
190
+ - - '>='
191
+ - !ruby/object:Gem::Version
192
+ version: '0'
193
+ prerelease: false
194
+ type: :development
195
+ - !ruby/object:Gem::Dependency
196
+ name: rspec-expectations
197
+ version_requirements: !ruby/object:Gem::Requirement
198
+ requirements:
199
+ - - '>='
200
+ - !ruby/object:Gem::Version
201
+ version: '0'
202
+ requirement: !ruby/object:Gem::Requirement
203
+ requirements:
204
+ - - '>='
205
+ - !ruby/object:Gem::Version
206
+ version: '0'
207
+ prerelease: false
208
+ type: :development
209
+ - !ruby/object:Gem::Dependency
210
+ name: descriptive_statistics
211
+ version_requirements: !ruby/object:Gem::Requirement
212
+ requirements:
213
+ - - '>='
214
+ - !ruby/object:Gem::Version
215
+ version: '0'
216
+ requirement: !ruby/object:Gem::Requirement
217
+ requirements:
218
+ - - '>='
219
+ - !ruby/object:Gem::Version
220
+ version: '0'
221
+ prerelease: false
222
+ type: :development
223
+ description: game server
224
+ email:
225
+ - chris@ochsnet.com
226
+ executables:
227
+ - game_machine
228
+ extensions: []
229
+ extra_rdoc_files: []
230
+ files:
231
+ - Gemfile
232
+ - Gemfile.lock
233
+ - Rakefile
234
+ - bin/game_machine
235
+ - config/cluster.conf
236
+ - config/config.example.yml
237
+ - config/game_messages.proto
238
+ - config/messages.proto
239
+ - config/regions.example.yml
240
+ - config/standalone.conf
241
+ - db/do_not_delete
242
+ - game_machine.gemspec
243
+ - games/example/boot.rb
244
+ - games/example/data/game_data.yml
245
+ - games/example/lib/aggressive_npc.rb
246
+ - games/example/lib/authentication_handler.rb
247
+ - games/example/lib/chatbot.rb
248
+ - games/example/lib/combat_controller.rb
249
+ - games/example/lib/example_controller.rb
250
+ - games/example/lib/game.rb
251
+ - games/example/lib/models/attack.rb
252
+ - games/example/lib/models/combat_update.rb
253
+ - games/example/lib/models/player_command.rb
254
+ - games/example/lib/models/user.rb
255
+ - games/example/lib/models/vitals.rb
256
+ - games/example/lib/npc.rb
257
+ - games/example/lib/npc_group.rb
258
+ - games/example/lib/npc_movement.rb
259
+ - games/example/lib/player_manager.rb
260
+ - games/example/lib/player_register.rb
261
+ - games/example/lib/tracking_handler.rb
262
+ - games/example/lib/zone_manager.rb
263
+ - games/preload.rb
264
+ - integration_tests/basic_spec.rb
265
+ - integration_tests/bot_spec.rb
266
+ - integration_tests/chat_spec.rb
267
+ - integration_tests/distributed_spec.rb
268
+ - integration_tests/entity_tracking_spec.rb
269
+ - integration_tests/mono_spec.rb
270
+ - integration_tests/objectdb_spec.rb
271
+ - integration_tests/tcp_client_spec.rb
272
+ - integration_tests/udp_client_spec.rb
273
+ - integration_tests/udp_spec.rb
274
+ - integration_tests/udt_client_spec.rb
275
+ - integration_tests/udt_spec.rb
276
+ - java/.gitignore
277
+ - java/build.gradle
278
+ - java/component.erb
279
+ - java/gradle.properties
280
+ - java/gradle/wrapper/gradle-wrapper.jar
281
+ - java/gradle/wrapper/gradle-wrapper.properties
282
+ - java/gradlew
283
+ - java/gradlew.bat
284
+ - java/local_lib/protostuff-compiler-1.0.7-jarjar.jar
285
+ - java/settings.gradle
286
+ - java/src/main/java/com/game_machine/core/ActorFactory.java
287
+ - java/src/main/java/com/game_machine/core/ActorUtil.java
288
+ - java/src/main/java/com/game_machine/core/CommandProxy.java
289
+ - java/src/main/java/com/game_machine/core/EntitySerializer.java
290
+ - java/src/main/java/com/game_machine/core/EventStreamHandler.java
291
+ - java/src/main/java/com/game_machine/core/GameMachineLoader.java
292
+ - java/src/main/java/com/game_machine/core/Grid.java
293
+ - java/src/main/java/com/game_machine/core/GridValue.java
294
+ - java/src/main/java/com/game_machine/core/IActorFactory.java
295
+ - java/src/main/java/com/game_machine/core/NetMessage.java
296
+ - java/src/main/java/com/game_machine/core/UdpServer.java
297
+ - java/src/main/java/com/game_machine/core/UdpServerHandler.java
298
+ - java/src/main/resources/game_machine.java.stg
299
+ - java/src/main/resources/logback.xml
300
+ - java/src/main/resources/logging.properties
301
+ - java/src/main/resources/protostuff.properties
302
+ - lib/game_machine.rb
303
+ - lib/game_machine/actor.rb
304
+ - lib/game_machine/actor/base.rb
305
+ - lib/game_machine/actor/builder.rb
306
+ - lib/game_machine/actor/development.rb
307
+ - lib/game_machine/actor/factory.rb
308
+ - lib/game_machine/actor/mono_actor.rb
309
+ - lib/game_machine/actor/ref.rb
310
+ - lib/game_machine/actor/reloadable.rb
311
+ - lib/game_machine/actor/system.rb
312
+ - lib/game_machine/akka.rb
313
+ - lib/game_machine/app_config.rb
314
+ - lib/game_machine/application.rb
315
+ - lib/game_machine/auth_handlers/base.rb
316
+ - lib/game_machine/auth_handlers/public.rb
317
+ - lib/game_machine/bot/chat.rb
318
+ - lib/game_machine/bot/client.rb
319
+ - lib/game_machine/client_manager.rb
320
+ - lib/game_machine/clients.rb
321
+ - lib/game_machine/clients/client.rb
322
+ - lib/game_machine/clients/tcp_client.rb
323
+ - lib/game_machine/clients/test_client.rb
324
+ - lib/game_machine/clients/udp_client.rb
325
+ - lib/game_machine/clients/udt_client.rb
326
+ - lib/game_machine/cluster_monitor.rb
327
+ - lib/game_machine/commands.rb
328
+ - lib/game_machine/commands/base.rb
329
+ - lib/game_machine/commands/chat_commands.rb
330
+ - lib/game_machine/commands/datastore_commands.rb
331
+ - lib/game_machine/commands/grid_commands.rb
332
+ - lib/game_machine/commands/message_helper.rb
333
+ - lib/game_machine/commands/misc_commands.rb
334
+ - lib/game_machine/commands/navigation_commands.rb
335
+ - lib/game_machine/commands/player_commands.rb
336
+ - lib/game_machine/commands/proxy.rb
337
+ - lib/game_machine/console.rb
338
+ - lib/game_machine/console/build.rb
339
+ - lib/game_machine/console/install.rb
340
+ - lib/game_machine/console/server.rb
341
+ - lib/game_machine/data_store.rb
342
+ - lib/game_machine/data_stores/couchbase.rb
343
+ - lib/game_machine/data_stores/mapdb.rb
344
+ - lib/game_machine/data_stores/memory.rb
345
+ - lib/game_machine/data_stores/redis.rb
346
+ - lib/game_machine/endpoints.rb
347
+ - lib/game_machine/endpoints/mono_gateway.rb
348
+ - lib/game_machine/endpoints/tcp.rb
349
+ - lib/game_machine/endpoints/tcp_handler.rb
350
+ - lib/game_machine/endpoints/udp.rb
351
+ - lib/game_machine/endpoints/udp_incoming.rb
352
+ - lib/game_machine/endpoints/udp_outgoing.rb
353
+ - lib/game_machine/game_loader.rb
354
+ - lib/game_machine/game_systems.rb
355
+ - lib/game_machine/game_systems/agents/controller.rb
356
+ - lib/game_machine/game_systems/chat.rb
357
+ - lib/game_machine/game_systems/chat_manager.rb
358
+ - lib/game_machine/game_systems/chat_topic.rb
359
+ - lib/game_machine/game_systems/devnull.rb
360
+ - lib/game_machine/game_systems/entity_loader.rb
361
+ - lib/game_machine/game_systems/entity_tracking.rb
362
+ - lib/game_machine/game_systems/local_echo.rb
363
+ - lib/game_machine/game_systems/objectdb_proxy.rb
364
+ - lib/game_machine/game_systems/private_chat.rb
365
+ - lib/game_machine/game_systems/region_manager.rb
366
+ - lib/game_machine/game_systems/region_service.rb
367
+ - lib/game_machine/game_systems/region_settings.rb
368
+ - lib/game_machine/game_systems/remote_echo.rb
369
+ - lib/game_machine/game_systems/stress_test.rb
370
+ - lib/game_machine/grid.rb
371
+ - lib/game_machine/grid_replicator.rb
372
+ - lib/game_machine/handlers/authentication.rb
373
+ - lib/game_machine/handlers/game.rb
374
+ - lib/game_machine/handlers/request.rb
375
+ - lib/game_machine/hashring.rb
376
+ - lib/game_machine/helpers/game_message.rb
377
+ - lib/game_machine/helpers/state_machine.rb
378
+ - lib/game_machine/java_lib.rb
379
+ - lib/game_machine/logger.rb
380
+ - lib/game_machine/message_buffer.rb
381
+ - lib/game_machine/message_queue.rb
382
+ - lib/game_machine/model.rb
383
+ - lib/game_machine/models.rb
384
+ - lib/game_machine/models/player_status_update.rb
385
+ - lib/game_machine/models/region.rb
386
+ - lib/game_machine/mono_server.rb
387
+ - lib/game_machine/navigation.rb
388
+ - lib/game_machine/navigation/detour.rb
389
+ - lib/game_machine/navigation/detour_navmesh.rb
390
+ - lib/game_machine/navigation/detour_path.rb
391
+ - lib/game_machine/navigation/path.rb
392
+ - lib/game_machine/object_db.rb
393
+ - lib/game_machine/protobuf.rb
394
+ - lib/game_machine/protobuf/game_messages.rb
395
+ - lib/game_machine/protobuf/generate.rb
396
+ - lib/game_machine/protobuf_extensions/entity_helper.rb
397
+ - lib/game_machine/reloadable_monitor.rb
398
+ - lib/game_machine/restart_watcher.rb
399
+ - lib/game_machine/ruby_extensions/nilclass.rb
400
+ - lib/game_machine/ruby_extensions/string.rb
401
+ - lib/game_machine/scheduler.rb
402
+ - lib/game_machine/securerandom.rb
403
+ - lib/game_machine/settings.rb
404
+ - lib/game_machine/system_monitor.rb
405
+ - lib/game_machine/system_stats.rb
406
+ - lib/game_machine/uniqueid.rb
407
+ - lib/game_machine/vector.rb
408
+ - lib/game_machine/version.rb
409
+ - lib/game_machine/write_behind_cache.rb
410
+ - mono/bin/csharp/common.xslt
411
+ - mono/bin/csharp/csharp.xslt
412
+ - mono/bin/csharp/descriptor.proto
413
+ - mono/bin/csharp/protobuf-net.dll
414
+ - mono/bin/csharp/protobuf-net.pdb
415
+ - mono/bin/csharp/protobuf-net.xml
416
+ - mono/bin/csharp/protogen.exe.config
417
+ - mono/bin/csharp/protogen.pdb
418
+ - mono/bin/csharp/protogen_csharp.exe
419
+ - mono/bin/csharp/vb.xslt
420
+ - mono/bin/csharp/xml.xslt
421
+ - mono/server/Makefile
422
+ - mono/server/NLog.config
423
+ - mono/server/NLog.dll
424
+ - mono/server/actor.cs
425
+ - mono/server/build.bat
426
+ - mono/server/cscompmgd.dll
427
+ - mono/server/iactor.cs
428
+ - mono/server/message_router.cs
429
+ - mono/server/message_util.cs
430
+ - mono/server/messages.cs
431
+ - mono/server/protobuf-net.dll
432
+ - mono/server/proxy_client.cs
433
+ - mono/server/proxy_server.cs
434
+ - mono/server/test_actor.cs
435
+ - pathfinding/bin/premake4
436
+ - pathfinding/include/mesh_loader.h
437
+ - pathfinding/include/pathfind.h
438
+ - pathfinding/main.cpp
439
+ - pathfinding/mesh_loader.cpp
440
+ - pathfinding/pathfind.cpp
441
+ - pathfinding/pathfinder.cs
442
+ - pathfinding/premake4.lua
443
+ - script/server.sh
444
+ - script/watch.sh
445
+ - spec/actor/actor_spec.rb
446
+ - spec/actor/builder_spec.rb
447
+ - spec/actor/ref_spec.rb
448
+ - spec/application_spec.rb
449
+ - spec/client_manager_spec.rb
450
+ - spec/commands/chat_commands_spec.rb
451
+ - spec/commands/datastore_commands_spec.rb
452
+ - spec/commands/grid_commands_spec.rb
453
+ - spec/commands/navigation_commands_spec.rb
454
+ - spec/commands/player_commands_spec.rb
455
+ - spec/commands_spec.rb
456
+ - spec/data_stores/mapdb_spec.rb
457
+ - spec/data_stores/redis_spec.rb
458
+ - spec/game_systems/agents/controller_spec.rb
459
+ - spec/game_systems/agents/test_agent.rb
460
+ - spec/game_systems/agents/test_agent_config.rb
461
+ - spec/game_systems/chat_manager_spec.rb
462
+ - spec/game_systems/chat_spec.rb
463
+ - spec/game_systems/entity_tracking_spec.rb
464
+ - spec/game_systems/region_manager_spec.rb
465
+ - spec/grid_spec.rb
466
+ - spec/handlers/authentication_spec.rb
467
+ - spec/handlers/game_spec.rb
468
+ - spec/handlers/request_spec.rb
469
+ - spec/hashring_spec.rb
470
+ - spec/integration_helper.rb
471
+ - spec/java_grid_spec.rb
472
+ - spec/message_buffer_spec.rb
473
+ - spec/message_expectations.rb
474
+ - spec/message_queue_spec.rb
475
+ - spec/misc_spec.rb
476
+ - spec/model_spec.rb
477
+ - spec/mono_spec.rb
478
+ - spec/mono_test.rb
479
+ - spec/navigation/detour_navmesh_spec.rb
480
+ - spec/navigation/detour_path_spec.rb
481
+ - spec/spec_helper.rb
482
+ - spec/udp_server_spec.rb
483
+ - spec/write_behind_cache_spec.rb
484
+ - web/app.rb
485
+ - web/config/trinidad.yml
486
+ - web/controllers/auth_controller.rb
487
+ - web/controllers/base_controller.rb
488
+ - web/controllers/index_controller.rb
489
+ - web/controllers/log_controller.rb
490
+ - web/controllers/messages_controller.rb
491
+ - web/controllers/player_register_controller.rb
492
+ - web/log/development.log
493
+ - web/tmp/restart.txt
494
+ - web/views/game_messages.haml
495
+ - web/views/index.haml
496
+ - web/views/layout.haml
497
+ - web/views/logs.haml
498
+ - web/views/player_register.haml
499
+ - web/views/player_registered.haml
500
+ - web/views/register_layout.haml
501
+ - web/views/restart.haml
502
+ homepage: https://github.com/gamemachine/gamemachine
503
+ licenses: []
504
+ metadata: {}
505
+ post_install_message:
506
+ rdoc_options: []
507
+ require_paths:
508
+ - lib
509
+ required_ruby_version: !ruby/object:Gem::Requirement
510
+ requirements:
511
+ - - '>='
512
+ - !ruby/object:Gem::Version
513
+ version: '0'
514
+ required_rubygems_version: !ruby/object:Gem::Requirement
515
+ requirements:
516
+ - - '>='
517
+ - !ruby/object:Gem::Version
518
+ version: '0'
519
+ requirements: []
520
+ rubyforge_project:
521
+ rubygems_version: 2.1.9
522
+ signing_key:
523
+ specification_version: 4
524
+ summary: Game Machine
525
+ test_files:
526
+ - integration_tests/basic_spec.rb
527
+ - integration_tests/bot_spec.rb
528
+ - integration_tests/chat_spec.rb
529
+ - integration_tests/distributed_spec.rb
530
+ - integration_tests/entity_tracking_spec.rb
531
+ - integration_tests/mono_spec.rb
532
+ - integration_tests/objectdb_spec.rb
533
+ - integration_tests/tcp_client_spec.rb
534
+ - integration_tests/udp_client_spec.rb
535
+ - integration_tests/udp_spec.rb
536
+ - integration_tests/udt_client_spec.rb
537
+ - integration_tests/udt_spec.rb
538
+ - spec/actor/actor_spec.rb
539
+ - spec/actor/builder_spec.rb
540
+ - spec/actor/ref_spec.rb
541
+ - spec/application_spec.rb
542
+ - spec/client_manager_spec.rb
543
+ - spec/commands/chat_commands_spec.rb
544
+ - spec/commands/datastore_commands_spec.rb
545
+ - spec/commands/grid_commands_spec.rb
546
+ - spec/commands/navigation_commands_spec.rb
547
+ - spec/commands/player_commands_spec.rb
548
+ - spec/commands_spec.rb
549
+ - spec/data_stores/mapdb_spec.rb
550
+ - spec/data_stores/redis_spec.rb
551
+ - spec/game_systems/agents/controller_spec.rb
552
+ - spec/game_systems/agents/test_agent.rb
553
+ - spec/game_systems/agents/test_agent_config.rb
554
+ - spec/game_systems/chat_manager_spec.rb
555
+ - spec/game_systems/chat_spec.rb
556
+ - spec/game_systems/entity_tracking_spec.rb
557
+ - spec/game_systems/region_manager_spec.rb
558
+ - spec/grid_spec.rb
559
+ - spec/handlers/authentication_spec.rb
560
+ - spec/handlers/game_spec.rb
561
+ - spec/handlers/request_spec.rb
562
+ - spec/hashring_spec.rb
563
+ - spec/integration_helper.rb
564
+ - spec/java_grid_spec.rb
565
+ - spec/message_buffer_spec.rb
566
+ - spec/message_expectations.rb
567
+ - spec/message_queue_spec.rb
568
+ - spec/misc_spec.rb
569
+ - spec/model_spec.rb
570
+ - spec/mono_spec.rb
571
+ - spec/mono_test.rb
572
+ - spec/navigation/detour_navmesh_spec.rb
573
+ - spec/navigation/detour_path_spec.rb
574
+ - spec/spec_helper.rb
575
+ - spec/udp_server_spec.rb
576
+ - spec/write_behind_cache_spec.rb