Telarin

Members
  • Content Count

    317
  • Joined

  • Last visited

Everything posted by Telarin

  1. It seems like the change that was made some time ago that caused the whole world to not reload when you embarked on a cart was reverted at some point. It wasn't the most recent update, it was several updates ago. I should have posted it as soon as I noticed, but I didn't.
  2. RAID

    Where in the world did you come up with that? The odds of simultaneous drive failure in a RAID array are statistically insignificant. Especially if you actually follow industry best practices and do not use drives from the same manufacturing batches to construct your arrays.
  3. If he want to relocate to a Houston area data center, I'd be happy to handle the hardware and networking end of things
  4. If you are floor mining in a cave, after the mine action completes, the highlighted tile outline still shows the outline of where the tile used to be until you move your mouse out to another tile and back. This in the current Unstable client. Have not tested in stable.
  5. Wait. What? How would "bigger better" servers prevent a bug from crashing them? And for those of you saying that building your own server is not practical, I have to say you are wrong. I built two servers a few months ago for the company I work for and there are definitely advantages to building your own servers. One of the biggest advantages is that you aren't stuck praying for availability of propritary replacement parts in the event of a hardware failure of some kind. It is also generally less expensive to build a server than it is to buy one off the shelf. However, at the same time, you have to really know what you are doing. You can't buy a $200 desktop motherboard and CPU from TigerDirect or something and expect it to survive the abuse that a server is put through. You need a board designed for server use that supports Registered ECC memory. You need server spec CPUs (Xeon or Opterons depending on your preference of flavor). You need enterprise drives that are going to be able to hold up to the rigors of 24/7 access. You need RAID controllers built to handle the constant load and throughput that a server demands. The server I build a few months ago was dual 6-core CPUs (12 cores total), hot-swap Enterprise SAS drives in RAID 5, 16 GB ECC Registered RAM, etc. Total cost was about $7k, compared to $10k-$12k for a similar configured commercial machine. Definitely a savings, but don't expect some $1,000 miracle when you build your own server.
  6. MR has a number of villages where there are people on at nearly all times, so that shouldn't be a problem.
  7. I like both suggestion. Simple fix to a small annoyance that really doesn't add anything to the game. +1
  8. Unfortuanately "cloud" computing is a buzzword that can mean very different things depending on it's use. If you want to get into specifics of clustering and various other technologies, they are most likely going to require substantial changes to the server code. My experience with SQL clusters is that they improve performance mostly for applications that have a lot of database read activity without a lot of updates, like shopping cart apps. When you have databases doing a lot of UPDATE and INSERT operations, those have to be synced across all databases, and you quickly start to lose performance in a cluster environment. That being said, simply offloading the database to it's own dedicated server is a great way to improve performance. Most modern database applications happily use multiple threads. Adding more RAM to the database server and using a faster disk subsystem also can improve performance dramatically. I just put in a 12 core Opteron based database server with 16 GB of RAM and 3GB/s SAS based RAID-5 disk array, and the performance on that machine is incredible. Something like that as a dedicated backend database server would help dramatically if the database is really the bottleneck. Just have to make sure that you have plenty of bandwidth between the two servers, or you just end up moving the bottleneck from the database to the network. Another solution that is very labor intensive, but is a much longer term solution is to rewrite part of the Wurm engine to run on multiple servers. Most modern MMO engines break a single world across mutliple servers. Usually this is done by either manually breaking the world into zones, each of which can run on it's own server (WoW's approach), or by breaking the world apart using a quad tree. The advantage of using the quad tree is that regions can be dynamically split, merged, and offloaded to additional hardware dynamically and in real time, allowing the server cluster to adjust as needed to changing player load in different areas. This would most likely require a massive rewrite of much of the server side code, and is definitely a more long term solution, however, if done right it would allow Wurm to support larger worlds and a nearly limitless number of players. However, problem the single best way to improve performance is to optimize code. Better caching on the application side, making sure not to use updatable recordsets where read only recordsets will due, and things like that can usually improve performance more than anything else. Unfortunately, only Rolf is in a position to know exactly what the bottleneck is, and until he finishes analyzing that, all we can do is speculate.
  9. You are incorrect to assume that wurm has no z-axis. In order for a height map (which is what wurm uses for terrain) to work at all, there must be z-axis calculations. However, currently there is no z-axis collision detection (this is the part that is missing which makes people erroneously think that Wurm is not 3d). Adding z-axis collision is the major roadblock to adding bridges and multi-story buildings, and is not something that can just easily be added if the original engine didn't have it. It will most likely require pretty substantial rewrites of key portions of the engine.
  10. Plough

    I don't think you should be able to plow by dragging it though. Realistically, it would pretty much be impossible to cut through ground with just human strength. It should have to be hitched to a horse (or two) to be able to actually plow. It should also move very slowly when in plow mode, even when hitched.
  11. Well since the difference in height between two characters is already taken into account, it wouldn't be too hard to either set a threshold that is "too much difference" for melee. Alternately, when you mounted the tower, you could be flagged as unhittable in melee.
  12. I am wondering, about some of these points. Some make sense, while others are just driving off players. To start with: 1. larger deeds pay more, well, I see the point in that. But it would have to be defined what we consider as "large" and what we consider as "small". 2. Older deeds would pay more, this one for example, has no logical reason in my eyes. I thought we wanted players to stay with wurm and play it, usually players stay with a village for a very long time, thus making it more expensive, just because it's older may ruin it at some point. 3. The longer a deed has remained undrained, the more it pays. THIS one is utter . You're punishing a village for never being drained, having good defenses or good fighters to defend it at least. As much as I would love to see Kyara paying a whole lot of money due to their invincible dirtwall, it makes just no point. 4. That the capital city should pay more is unreasonable also. Completely pointless anyways. It used to be a feature or a privilege if you want to apply it to real life status of some cities in the history. Towns or Cities with certain titles have always had some privileges in less taxes or whatever, why punish a city for being the glory of the kingdom? So that's the logical reason why this part is crap Now to the workaround: A kingdom would just choose a little size5 deed instead for capital. 5. Same as with point 2. Again you're punishing being actively playing the game. I like the idea of a raid pool for the whole kingdom, but rolf wouldn't take off the suggested 50% from the trader routs anyways. To be honest - it would be enough if 1-5% of the money was going into said raid pool, it's not like raids are so common. This would also avoid exploitage, imagine the raid pool would get a hell of a lot money, ppl would just plant an enemy deed on an alt, pay its upkeep but drain it every 24 hours because they get a profit out of the kingdom raid pool. Would be amusing though. Your post makes no sense, I am not sure you read the original post at all. At no point did I mention increasing the cost of the deed. All I refered to is increasing the amount of the raid pool paid out on a successful drain due to several factors. The whole point of the raid pools is to make raids more common and more worthwhile based on the time and effort required.
  13. Ok, I am making some assumptions about how the server handles a few things based on observation, if I am incorrect let me know: Assumption 1: The server keeps track of object temperature in real-time, rather than recalculating temperature only when a client requests this information. Assumption 2: The server knows which containers a given client has open, and thus what containers it needs to send content updates for. This is based off the fact that if I have a container open, it is updated when someone else adds or removes an item. It is possible that the client periodically re-requests content information for the container, but I really hope not, as that would be the most inefficient way to handle it. Based off these two assumptions, here is how I would handle it: When the container is opened, the temperature information is included in the initial server message that populates the container contents for the client. In the function that handles temperature calculations, if the temperature category has changed, check to see if the items container has any observers, and if so, send an appropriate content update server message. This should only generate traffic when the temperature category of an item changes, and should not generate a substantial amount of additional load on the server.
  14. As it currently stands, there is not much incentive for raiding the larger better protected deeds on Wild. In can often take many hours to break through defenses of a well defended deed for only 1 or 2 silver reward for the effort. I don't think anyone wants to see any additional silver "stolen" from the upkeep pool, but I have a suggestion for a way to provide more reward with no additional payout from Rolf. Currently, as I understand it, a portion of a deeds upkeep goes into a pool when it is paid. That pool is then distributed to traders on a periodic basis. My idea is to redirect some portion (maybe half) of the amount that goes to the trader pool to a raid pool instead. Each kingdom would have its own raid pool. Possibly each deed could have one as well, but there would be more things that would need to be kept track of in that case. Whenever a token of a village over a certain size (say size 10 or so) is drained, the drainer would get, in addition to their regular drain, a portion of the raid pool from the kingdom of the deed he is draining. The portion would be scaled based on a number of factors: Larger deeds would pay more A deed with more guards pays more Older deeds would pay more The longer a deed has remained undrained, the more it pays The capital city of a kingdom pays substantially more, since effectively you are raiding the kingdom's treasury The more citizens with active subscriptions a deed has, the more it pays The cap on the amount that could be paid out of the raid pool with any one drain would be the lesser of 10% of the current raid pool, or 100% of the monthly upkeep amount of the deed being drained. It would of course be possible for someone to use an alt in the enemy kingdom to place a deed explicity for draining the raid pool, however, a few rules could easily make this impractical: A deed has to be over a month old to be eligible to drain from the raid pool A deed must be over a certain size (around size 10 or 21x21) to be eligible for the raid pool. This also helps to keep the raid pools from encouraging the raiding of smaller "noob" deeds, as they simply are not very lucrative. An eligible deed pays less from the raid pool if it has been raided recently With just these few mechanics, it would pretty much be impossible to gain more from the raid pool by placing a deed just for draining that it would cost to place the deed and sub the accounts necessary to make it lucrative. I think this would help to make it worth the time and effort necessary to assemble a large enough force and spend the siege time needed to raid larger and better defended deeds, which would encourage more varied PvP across the Wild server. As an added incentive to protect a kingdom's deeds, there could also be some kind of bonus given to kingdoms for keeping their raid pool protected. Perhaps different small bonuses if the raid pool is kept above certain thresholds without being drained. This would also give a more varied and effort related method to distributing the wealth that currently all goes to traders. This is still a pretty rough idea, but wanted to put it out there and see what people thought. It should go without saying that this would only apply to the Wild server, but I am saying it anyway to prevent at least one set of troll posts...
  15. Hmm... sticky posts FTW. Yeah, exactly like that
  16. Anyone that has played Dwarf Fortress for any length of time has probably utilized the Eternal Suggestion Voting page on the site. Basically, it is a list of suggestions that players can add suggestions too, much like the suggestion forum. However, each player has 3 votes that they can allocate to their 3 favorite suggestions. The list shows in real-time how many votes each suggestion has, with the most popular suggestions at the top. A player can reallocate their votes at any time if they change their mind or better suggestions are posted. As suggestions are implemented, they are removed from the list and players can reallocate those votes. A setup like that would really help Rolf to see what things players most want to see added to the game, and I think would be a helpful tool for him in prioritizing new features. I certainly don't suggest that he BLINDLY add all popular suggestions, as I'm sure there will always be effectively game breaking suggestions, but I think it would be much easier to get an idea of a suggestions popularity than trudging through 10 pages of +1s and -1s.
  17. This sounds like a great way to facilitate trading of bulk construction materials, etc. A definite +1 from me.
  18. Anyone know what was in the resource update to the unstable client last night? It would be really nice if these things got posted on a more regular basis so those of us running unstable knew what to be watching for so we could report those things not working correctly.
  19. +1 to having a sleep bonus toggle button next to Autofight etc, can't see any good reason why it is not there.
  20. Would also make sense if there were some "borderline" foods that an animal wouldn't normally eat, but would eat if it was hungry enough.
  21. I have been getting periodic client crashes, here is the last one: This is with the unstable client: Unexpected crash while playing The error was: <null> It's possible you might figure out what's wrong from the log file below, but if you can't, post the full log on the wurm online forums, and someone else might be able to help you. Contents of console.log: Time is Sun Oct 24 21:41:08 CDT 2010 Running client version 2.7.5b [unstable] === System information === Executing from C:\Documents and Settings\Administrator\Desktop Operating system: Windows XP (arch: x86, version: 5.2) Java version: 1.6.0_21 (Sun Microsystems Inc.) <http://java.sun.com/> Jvm version: 17.0-b17 (Sun Microsystems Inc.) [Java HotSpot(TM) Client VM] Available CPUs: 2 >>> Main thread exiting. Loading character Telarin Loading config default Loading props file C:\Program Files (x86)\WurmOnline\configs\default\gamesettings.txt Loading props file C:\Program Files (x86)\WurmOnline\players\Telarin\password.txt >>> LoginFrame queue entry exiting. Saving props file C:\Program Files (x86)\WurmOnline\players\Telarin\password.txt Saving props file C:\Program Files (x86)\WurmOnline\configs\default\gamesettings.txt Loaded pack sound.jar (r403) Loaded pack graphics.jar (r425) Loading props file C:\Program Files (x86)\WurmOnline\players\Telarin\stats.txt >>> Launch queue entry exiting. Preparing to enable console logging. Now logging to C:\Program Files (x86)\WurmOnline\console.Telarin.log === Wurm options === allow_async_awt_events = true animation_playback_self = 0 auto_mipmaps_enabled = 2 cavedetail = 0 censor_chat = false cloud_shadows = true compressed_textures = false compressed_textures_S3TC = true debug_mode = false display_settings = false:true:0:1024:768:-1:-1:false enable_shift_drag = false engine_multithreaded = 0 event_log_rotation = 2 fast_yield = false fbo_enabled = 1 fog_coord_src = 0 font_bold = 11 font_default = 11 font_header = 24 font_huge_header = 36 font_italian = 11 font_monospaced = 11 fps_limit = 60 fps_limit_background = 30 fps_limit_enabled = true game_client_thread_priority = 2 glsl_enabled = 2 gui_opacity = 3 has_read_eula = true hide_menu_examine = false hide_menu_no_target = false hide_menu_spam_mode = true hide_menu_stop = true high_res_binoculars = false hint_texture_scaling = 2 impColumn = true inverse_mouse = false irc_log_rotation = 2 irc_notif = 0 item_creature_render_distance = 4 loadInventoryStartup = true local_list_in_event = false log_extra_errors = false material_as_suffix = true max_texture_size = 3 mega_texture_size = 4 model_loader_thread_priority = 2 model_loading_threads = 1 multidraw_enabled = 2 no_brightness = false no_terrain_render = false no_world_render = false non_power_of_two = 2 occlusion_queries_enabled = 2 offscreen_texture_size = 1 other_log_rotation = 2 outline_picking = true player_guest = false reflection_texture_size = 2 reflections = 4 release_context = false release_context_on_jogl_sleep = false remember_password = true render_distant_terrain = true render_glow = false render_sun_glare = true resident_models = false save_skills_on_quit = false screenshot_file_format = 1 setting_timestamps = true settings_version = 1 shadow_level = 4 showKChat = true silent_friends_update = false skillgain_minimum = 2 skillgain_no_alignment = true skillgain_no_favor = true skydetail = 2 sleep_on_awt_drag = false sound_al_gain = 15 sound_buzzlevel = 2 sound_engine = 1 sound_footstepslevel = 10 sound_play_ambients = true sound_play_buzz = true sound_play_footsteps = true sound_play_music = true sound_play_weather = true structure_render_distance = 4 submit_client_data = 0 temporary_jogl_maximize_override = false terrain_bump = true terrain_res = 2 test_attach_equipment = false test_mode = 0 tile_transitions = true tiledecorations = 3 toolSlot1 = 706432479527682 toolSlot2 = 553976005133058 toolSlot3 = 47338542334978 toolSlot4 = 579316849050370 toolSlot5 = 495597920453378 treelist_outline = true trees = 4 update_optional = true use_anisotropic_filtering = 0 use_color_picking = true use_fast_clock_work_around = true use_fbo_color_picking = true use_fbo_reflections = true use_nagles_algorithm = false use_nano_timer = false use_non_alpha_particles = true use_smooth_lines = false use_smooth_points = false use_smooth_polygons = false use_tree_models = true use_weather_particles = true vbo_enabled = 2 viewport_bob = true Setting up dotXSI Model Loader Executing C:\Program Files (x86)\WurmOnline\configs\default\keybindings.txt Word filter loaded: 23 >>> Game launcher thread exiting. Using LWJGL display 1280:1024:0:0 (false) Setting up Sonar Sound Engine Setting debug gl === OpenGL information === JOGL version: 1.1.1 LWJGL version: 2.4.2 OpenGL vendor: NVIDIA Corporation OpenGL renderer: GeForce 9500 GT/PCI/SSE2 OpenGL version: 3.3.0 Colorbits: 8, 8, 8, 0 Stencilbits: 0 Depthbits: 24 Texture units: 4 AUX buffers: 4 Max GL Lights: 8 OpenGL extensions: GL_ARB_blend_func_extended GL_ARB_color_buffer_float GL_ARB_compatibility GL_ARB_copy_buffer GL_ARB_depth_buffer_float GL_ARB_depth_clamp GL_ARB_depth_texture GL_ARB_draw_buffers GL_ARB_draw_elements_base_vertex GL_ARB_draw_instanced GL_ARB_explicit_attrib_location GL_ARB_fragment_coord_conventions GL_ARB_fragment_program GL_ARB_fragment_program_shadow GL_ARB_fragment_shader GL_ARB_framebuffer_object GL_ARB_framebuffer_sRGB GL_ARB_geometry_shader4 GL_ARB_half_float_pixel GL_ARB_half_float_vertex GL_ARB_imaging GL_ARB_instanced_arrays GL_ARB_map_buffer_range GL_ARB_multisample GL_ARB_multitexture GL_ARB_occlusion_query GL_ARB_occlusion_query2 GL_ARB_pixel_buffer_object GL_ARB_point_parameters GL_ARB_point_sprite GL_ARB_provoking_vertex GL_ARB_sampler_objects GL_ARB_seamless_cube_map GL_ARB_shader_bit_encoding GL_ARB_shader_objects GL_ARB_shading_language_100 GL_ARB_shadow GL_ARB_sync GL_ARB_texture_border_clamp GL_ARB_texture_buffer_object GL_ARB_texture_compression GL_ARB_texture_compression_rgtc GL_ARB_texture_cube_map GL_ARB_texture_env_add GL_ARB_texture_env_combine GL_ARB_texture_env_crossbar GL_ARB_texture_env_dot3 GL_ARB_texture_float GL_ARB_texture_mirrored_repeat GL_ARB_texture_multisample GL_ARB_texture_non_power_of_two GL_ARB_texture_rectangle GL_ARB_texture_rg GL_ARB_texture_rgb10_a2ui GL_ARB_texture_swizzle GL_ARB_timer_query GL_ARB_transpose_matrix GL_ARB_uniform_buffer_object GL_ARB_vertex_array_bgra GL_ARB_vertex_array_object GL_ARB_vertex_buffer_object GL_ARB_vertex_program GL_ARB_vertex_shader GL_ARB_vertex_type_2_10_10_10_rev GL_ARB_window_pos GL_ATI_draw_buffers GL_ATI_texture_float GL_ATI_texture_mirror_once GL_S3_s3tc GL_EXT_texture_env_add GL_EXT_abgr GL_EXT_bgra GL_EXT_bindable_uniform GL_EXT_blend_color GL_EXT_blend_equation_separate GL_EXT_blend_func_separate GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_compiled_vertex_array GL_EXT_Cg_shader GL_EXT_depth_bounds_test GL_EXT_direct_state_access GL_EXT_draw_buffers2 GL_EXT_draw_instanced GL_EXT_draw_range_elements GL_EXT_fog_coord GL_EXT_framebuffer_blit GL_EXT_framebuffer_multisample GL_EXTX_framebuffer_mixed_formats GL_EXT_framebuffer_object GL_EXT_framebuffer_sRGB GL_EXT_geometry_shader4 GL_EXT_gpu_program_parameters GL_EXT_gpu_shader4 GL_EXT_multi_draw_arrays GL_EXT_packed_depth_stencil GL_EXT_packed_float GL_EXT_packed_pixels GL_EXT_pixel_buffer_object GL_EXT_point_parameters GL_EXT_provoking_vertex GL_EXT_rescale_normal GL_EXT_secondary_color GL_EXT_separate_shader_objects GL_EXT_separate_specular_color GL_EXT_shadow_funcs GL_EXT_stencil_two_side GL_EXT_stencil_wrap GL_EXT_texture3D GL_EXT_texture_array GL_EXT_texture_buffer_object GL_EXT_texture_compression_latc GL_EXT_texture_compression_rgtc GL_EXT_texture_compression_s3tc GL_EXT_texture_cube_map GL_EXT_texture_edge_clamp GL_EXT_texture_env_combine GL_EXT_texture_env_dot3 GL_EXT_texture_filter_anisotropic GL_EXT_texture_integer GL_EXT_texture_lod GL_EXT_texture_lod_bias GL_EXT_texture_mirror_clamp GL_EXT_texture_object GL_EXT_texture_shared_exponent GL_EXT_texture_sRGB GL_EXT_texture_swizzle GL_EXT_timer_query GL_EXT_vertex_array GL_EXT_vertex_array_bgra GL_IBM_rasterpos_clip GL_IBM_texture_mirrored_repeat GL_KTX_buffer_region GL_NV_blend_square GL_NV_conditional_render GL_NV_copy_depth_to_color GL_NV_copy_image GL_NV_depth_buffer_float GL_NV_depth_clamp GL_NV_explicit_multisample GL_NV_fence GL_NV_float_buffer GL_NV_fog_distance GL_NV_fragment_program GL_NV_fragment_program_option GL_NV_fragment_program2 GL_NV_framebuffer_multisample_coverage GL_NV_geometry_shader4 GL_NV_gpu_program4 GL_NV_half_float GL_NV_light_max_exponent GL_NV_multisample_coverage GL_NV_multisample_filter_hint GL_NV_occlusion_query GL_NV_packed_depth_stencil GL_NV_parameter_buffer_object GL_NV_parameter_buffer_object2 GL_NV_pixel_data_range GL_NV_point_sprite GL_NV_primitive_restart GL_NV_register_combiners GL_NV_register_combiners2 GL_NV_shader_buffer_load GL_NV_texgen_reflection GL_NV_texture_barrier GL_NV_texture_compression_vtc GL_NV_texture_env_combine4 GL_NV_texture_expand_normal GL_NV_texture_multisample GL_NV_texture_rectangle GL_NV_texture_shader GL_NV_texture_shader2 GL_NV_texture_shader3 GL_NV_transform_feedback GL_NV_vertex_array_range GL_NV_vertex_array_range2 GL_NV_vertex_buffer_unified_memory GL_NV_vertex_program GL_NV_vertex_program1_1 GL_NV_vertex_program2 GL_NV_vertex_program2_option GL_NV_vertex_program3 GL_NVX_conditional_render GL_NVX_gpu_memory_info GL_SGIS_generate_mipmap GL_SGIS_texture_lod GL_SGIX_depth_texture GL_SGIX_shadow GL_SUN_slice_accum GL_WIN_swap_hint WGL_EXT_swap_control GLSL version: 3.30 NVIDIA via Cg compiler Starting workaround for fast running clocks Using LWJGL timer. Startup Phase - Setting up.. Loading window positions from C:\Program Files (x86)\WurmOnline\players\Telarin\windows_1280x1024.txt Loading props file C:\Program Files (x86)\WurmOnline\players\Telarin\windows_1280x1024.txt Gui initialized Startup Phase - Preparing terrain Startup Phase - Connecting .. Disabling Nagles Writing to C:\Program Files (x86)\WurmOnline\players\Telarin\logs\_Event.2010-10.txt Disabling Nagles Login successful Executing C:\Program Files (x86)\WurmOnline\configs\default\autorun.txt Starting update of login splash image... Null XSI_Image for "" in RootTemplate . Loading model anyway.. Null XSI_Image for "" in RootTemplate . Loading model anyway.. Null XSI_Image for "" in RootTemplate . Loading model anyway.. Finished loading new login splash image! Null XSI_Image for "" in RootTemplate . Loading model anyway.. Null XSI_Image for "" in RootTemplate . Loading model anyway.. Null XSI_Image for "" in RootTemplate . Loading model anyway.. Null XSI_Image for "" in RootTemplate . Loading model anyway.. Null XSI_Image for "" in RootTemplate . Loading model anyway.. Null XSI_Image for "" in RootTemplate . Loading model anyway.. Null XSI_Image for "" in RootTemplate . Loading model anyway.. Null XSI_Image for "" in RootTemplate . Loading model anyway.. Writing to C:\Program Files (x86)\WurmOnline\players\Telarin\logs\Mol_Rehan.2010-10.txt Writing to C:\Program Files (x86)\WurmOnline\players\Telarin\logs\Village.2010-10.txt Execution aborted at connection 1, iteration 9462 Run time 9m, local time Sun Oct 24 21:51:16 CDT 2010 ====== CLIENT CRASH ====== Unexpected crash while playing java.lang.NullPointerException at com.mojang.joxsi.Interpolator.apply(Interpolator.java:117) at com.mojang.joxsi.Action.apply(Action.java:39) at class.dk.a(SourceFile:42) at class.dr.j(SourceFile:985) at class.dr.c(SourceFile:616) at class.ff.a(SourceFile:874) at class.cS.a(SourceFile:467) at class.hb.a(SourceFile:436) at class.cu.a(SourceFile:532) at class.cu.a(SourceFile:436) at class.gy.a(SourceFile:601) at class.dp.a(SourceFile:932) at class.dp.a(SourceFile:899) at com.wurmonline.client.f.d(SourceFile:261) at com.wurmonline.client.f.run(SourceFile:1402) at java.lang.Thread.run(Unknown Source) Then a crash to desktop with the stable client. Created the following hs_err_pid on the desktop # # A fatal error has been detected by the Java Runtime Environment: # # EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x695f2aaa, pid=532, tid=584 # # JRE version: 6.0_21-b07 # Java VM: Java HotSpot(TM) Client VM (17.0-b17 mixed mode windows-x86 ) # Problematic frame: # C [nvogl32.dll+0xf2aaa] # # If you would like to submit a bug report, please visit: # http://java.sun.com/webapps/bugreport/crash.jsp # The crash happened outside the Java Virtual Machine in native code. # See problematic frame for where to report the bug. # --------------- T H R E A D --------------- Current thread (0x3dec3400): JavaThread "Wurm 2.7.5b main thread" [_thread_in_native, id=584, stack(0x3e360000,0x3e3b0000)] siginfo: ExceptionCode=0xc0000005, writing address 0x3ea0bbb4 Registers: EAX=0x3e8ee502, EBX=0x00000000, ECX=0x00000000, EDX=0x3ea5fd1c ESP=0x3e3af750, EBP=0x00000000, ESI=0x3ea00000, EDI=0x58740680 EIP=0x695f2aaa, EFLAGS=0x00210206 Top of Stack: (sp=0x3e3af750) 0x3e3af750: 587407ec 69a745dd 00000de1 3ea20000 0x3e3af760: 69a58947 587407ec 6998cf33 3ea20000 0x3e3af770: 58740680 3e3af798 3dec3400 3ea20000 0x3e3af780: 00000000 00000000 6961b385 00000000 0x3e3af790: 3f2e1ffd 00000bad 3e3af7c8 01e22197 0x3e3af7a0: 3dec3518 3e3af7ac 00000bad 15cadac0 0x3e3af7b0: 16f11930 00000000 42480000 01fa8bd0 0x3e3af7c0: 699be960 00000000 3e3af868 01ec8734 Instructions: (pc=0x695f2aaa) 0x695f2a9a: 44 24 08 83 86 b4 bb 00 00 01 50 e8 96 00 3b 00 0x695f2aaa: 83 86 b4 bb 00 00 ff 5e c2 04 00 cc cc cc cc cc Stack: [0x3e360000,0x3e3b0000], sp=0x3e3af750, free space=13d3e3af258k Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) C [nvogl32.dll+0xf2aaa] [error occurred during error reporting (printing native stack), id 0xc0000005] Java frames: (J=compiled Java code, j=interpreted, Vv=VM code) J com.sun.opengl.impl.GLImpl.glCallList(I)V J class.ff.b(Lclass/bd;ZZ)V J class.hb.a(Lclass/bd;ZZZ)V J class.dp.b(Lclass/bd;ZZ)V J class.dp.a(Lclass/bd;ZZ)V J class.dp.d(II)V J com.wurmonline.client.f.d(Ljavax/media/opengl/GL;)V j com.wurmonline.client.f.run()V+510 j java.lang.Thread.run()V+11 v ~StubRoutines::call_stub --------------- P R O C E S S --------------- Java Threads: ( => current thread ) 0x3f378400 JavaThread "Wurm-Fast-Clock-Workaround-Thread" daemon [_thread_blocked, id=2356, stack(0x40170000,0x401c0000)] 0x3dfab400 JavaThread "Wurm SonarSoundEngine Thread" daemon [_thread_blocked, id=2964, stack(0x400e0000,0x40130000)] 0x3e0cec00 JavaThread "Java Sound Event Dispatcher" daemon [_thread_blocked, id=2800, stack(0x3fe30000,0x3fe80000)] =>0x3dec3400 JavaThread "Wurm 2.7.5b main thread" [_thread_in_native, id=584, stack(0x3e360000,0x3e3b0000)] 0x3c969000 JavaThread "XSI Model Loader 1" daemon [_thread_blocked, id=2340, stack(0x3da60000,0x3dab0000)] 0x3c969800 JavaThread "XSI Model Loader 0" daemon [_thread_blocked, id=1520, stack(0x3ca00000,0x3ca50000)] 0x3de84c00 JavaThread "TimerQueue" daemon [_thread_blocked, id=1340, stack(0x3dc20000,0x3dc70000)] 0x3c774c00 JavaThread "CacheCleanUpThread" daemon [_thread_blocked, id=3520, stack(0x3cd60000,0x3cdb0000)] 0x3c773400 JavaThread "CacheMemoryCleanUpThread" daemon [_thread_blocked, id=852, stack(0x3ccd0000,0x3cd20000)] 0x00397400 JavaThread "DestroyJavaVM" [_thread_blocked, id=276, stack(0x003a0000,0x003f0000)] 0x3be2e800 JavaThread "Javaws Secure Thread" daemon [_thread_blocked, id=2284, stack(0x3cbb0000,0x3cc00000)] 0x3be2cc00 JavaThread "AWT-Windows" daemon [_thread_in_native, id=3440, stack(0x3ca90000,0x3cae0000)] 0x3c770800 JavaThread "Java2D Disposer" daemon [_thread_blocked, id=2452, stack(0x3c970000,0x3c9c0000)] 0x3bdfec00 JavaThread "traceMsgQueueThread" daemon [_thread_blocked, id=2320, stack(0x3c520000,0x3c570000)] 0x3bdc5000 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=2780, stack(0x3c190000,0x3c1e0000)] 0x3bdb9800 JavaThread "CompilerThread0" daemon [_thread_blocked, id=2112, stack(0x3c100000,0x3c150000)] 0x3bdb8000 JavaThread "Attach Listener" daemon [_thread_blocked, id=3156, stack(0x3c070000,0x3c0c0000)] 0x3bdb6c00 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=3476, stack(0x3bfe0000,0x3c030000)] 0x3bda8c00 JavaThread "Finalizer" daemon [_thread_blocked, id=2760, stack(0x3bf50000,0x3bfa0000)] 0x3bda4000 JavaThread "Reference Handler" daemon [_thread_blocked, id=1524, stack(0x3bec0000,0x3bf10000)] Other Threads: 0x3bda1800 VMThread [stack: 0x3be30000,0x3be80000] [id=4080] 0x3bde0000 WatcherThread [stack: 0x3c220000,0x3c270000] [id=1620] VM state:not at safepoint (normal execution) VM Mutex/Monitor currently owned by a thread: None Heap def new generation total 165312K, used 123284K [0x03c30000, 0x0ef90000, 0x146d0000) eden space 146944K, 79% used [0x03c30000, 0x0ae10400, 0x0cbb0000) from space 18368K, 36% used [0x0dda0000, 0x0e424df8, 0x0ef90000) to space 18368K, 0% used [0x0cbb0000, 0x0cbb0000, 0x0dda0000) tenured generation total 367268K, used 356382K [0x146d0000, 0x2ad79000, 0x35c30000) the space 367268K, 97% used [0x146d0000, 0x2a2d7bb8, 0x2a2d7c00, 0x2ad79000) compacting perm gen total 20736K, used 20677K [0x35c30000, 0x37070000, 0x39c30000) the space 20736K, 99% used [0x35c30000, 0x37061548, 0x37061600, 0x37070000) No shared spaces configured. Dynamic libraries: 0x00400000 - 0x00424000 C:\Program Files (x86)\Java\jre6\bin\javaw.exe 0x7d600000 - 0x7d6f0000 C:\WINDOWS\system32\ntdll.dll 0x7d4c0000 - 0x7d5f0000 C:\WINDOWS\syswow64\kernel32.dll 0x7d1e0000 - 0x7d27c000 C:\WINDOWS\syswow64\ADVAPI32.dll 0x7da20000 - 0x7db00000 C:\WINDOWS\syswow64\RPCRT4.dll 0x7d8d0000 - 0x7d920000 C:\WINDOWS\syswow64\Secur32.dll 0x7d930000 - 0x7da00000 C:\WINDOWS\syswow64\USER32.dll 0x7d800000 - 0x7d890000 C:\WINDOWS\syswow64\GDI32.dll 0x7dee0000 - 0x7df40000 C:\WINDOWS\system32\IMM32.DLL 0x7c340000 - 0x7c396000 C:\Program Files (x86)\Java\jre6\bin\msvcr71.dll 0x6d800000 - 0x6daa7000 C:\Program Files (x86)\Java\jre6\bin\client\jvm.dll 0x76aa0000 - 0x76acd000 C:\WINDOWS\system32\WINMM.dll 0x6d7b0000 - 0x6d7bc000 C:\Program Files (x86)\Java\jre6\bin\verify.dll 0x6d330000 - 0x6d34f000 C:\Program Files (x86)\Java\jre6\bin\java.dll 0x6d290000 - 0x6d298000 C:\Program Files (x86)\Java\jre6\bin\hpi.dll 0x76b70000 - 0x76b7b000 C:\WINDOWS\system32\PSAPI.DLL 0x6d7f0000 - 0x6d7ff000 C:\Program Files (x86)\Java\jre6\bin\zip.dll 0x6d1d0000 - 0x6d1e3000 C:\Program Files (x86)\Java\jre6\bin\deploy.dll 0x761b0000 - 0x76243000 C:\WINDOWS\system32\CRYPT32.dll 0x77ba0000 - 0x77bfa000 C:\WINDOWS\syswow64\msvcrt.dll 0x76190000 - 0x761a2000 C:\WINDOWS\system32\MSASN1.dll 0x7c8d0000 - 0x7d0cf000 C:\WINDOWS\syswow64\SHELL32.dll 0x7d180000 - 0x7d1d2000 C:\WINDOWS\syswow64\SHLWAPI.dll 0x77670000 - 0x777a9000 C:\WINDOWS\syswow64\ole32.dll 0x3c2b0000 - 0x3c33b000 C:\WINDOWS\syswow64\OLEAUT32.dll 0x403f0000 - 0x404d6000 C:\WINDOWS\syswow64\WININET.dll 0x3c340000 - 0x3c349000 C:\WINDOWS\syswow64\Normaliz.dll 0x6f350000 - 0x6f483000 C:\WINDOWS\syswow64\urlmon.dll 0x40a90000 - 0x40c78000 C:\WINDOWS\syswow64\iertutil.dll 0x7dbd0000 - 0x7dcd3000 C:\WINDOWS\WinSxS\WOW64_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.3790.4770_x-ww_8D2E3180\comctl32.dll 0x6d610000 - 0x6d623000 C:\Program Files (x86)\Java\jre6\bin\net.dll 0x71c00000 - 0x71c17000 C:\WINDOWS\system32\WS2_32.dll 0x71bf0000 - 0x71bf8000 C:\WINDOWS\system32\WS2HELP.dll 0x6d630000 - 0x6d639000 C:\Program Files (x86)\Java\jre6\bin\nio.dll 0x6d6b0000 - 0x6d6f6000 C:\Program Files (x86)\Java\jre6\bin\regutils.dll 0x77b90000 - 0x77b98000 C:\WINDOWS\syswow64\VERSION.dll 0x6d000000 - 0x6d14a000 C:\Program Files (x86)\Java\jre6\bin\awt.dll 0x73070000 - 0x73097000 C:\WINDOWS\system32\WINSPOOL.DRV 0x7df50000 - 0x7dfc0000 C:\WINDOWS\system32\uxtheme.dll 0x4b3c0000 - 0x4b410000 C:\WINDOWS\SysWOW64\MSCTF.dll 0x75e60000 - 0x75e87000 C:\WINDOWS\system32\apphelp.dll 0x4dc30000 - 0x4dc5e000 C:\WINDOWS\system32\msctfime.ime 0x76e90000 - 0x76ecf000 C:\WINDOWS\system32\RASAPI32.dll 0x76e40000 - 0x76e52000 C:\WINDOWS\system32\rasman.dll 0x71c40000 - 0x71c97000 C:\WINDOWS\system32\NETAPI32.dll 0x76e60000 - 0x76e8f000 C:\WINDOWS\system32\TAPI32.dll 0x76e30000 - 0x76e3c000 C:\WINDOWS\system32\rtutils.dll 0x76920000 - 0x769e2000 C:\WINDOWS\system32\USERENV.dll 0x71e00000 - 0x71e14000 C:\WINDOWS\system32\msapsspc.dll 0x78080000 - 0x78091000 C:\WINDOWS\system32\MSVCRT40.dll 0x71e20000 - 0x71e70000 C:\WINDOWS\system32\msnsspc.dll 0x76c90000 - 0x76cb7000 C:\WINDOWS\SysWOW64\msv1_0.DLL 0x766e0000 - 0x766ec000 C:\WINDOWS\system32\cryptdll.dll 0x76cf0000 - 0x76d0a000 C:\WINDOWS\system32\iphlpapi.dll 0x722f0000 - 0x722f5000 C:\WINDOWS\system32\sensapi.dll 0x7db30000 - 0x7dbb0000 C:\WINDOWS\System32\mswsock.dll 0x76ed0000 - 0x76efa000 C:\WINDOWS\system32\DNSAPI.dll 0x76f70000 - 0x76f77000 C:\WINDOWS\System32\winrnr.dll 0x76f10000 - 0x76f3e000 C:\WINDOWS\syswow64\WLDAP32.dll 0x68000000 - 0x68035000 C:\WINDOWS\system32\rsaenh.dll 0x5f270000 - 0x5f2ca000 C:\WINDOWS\system32\hnetcfg.dll 0x71ae0000 - 0x71ae8000 C:\WINDOWS\System32\wshtcpip.dll 0x76f80000 - 0x76f85000 C:\WINDOWS\system32\rasadhlp.dll 0x6d230000 - 0x6d284000 C:\Program Files (x86)\Java\jre6\bin\fontmanager.dll 0x6d450000 - 0x6d474000 C:\Program Files (x86)\Java\jre6\bin\jpeg.dll 0x3cc40000 - 0x3ccab000 C:\Documents and Settings\Administrator\Application Data\Sun\Java\Deployment\cache\6.0\34\f83d062-5433f974-2.4.2--n\lwjgl.dll 0x5e8d0000 - 0x5e99e000 C:\WINDOWS\system32\OPENGL32.dll 0x68720000 - 0x68740000 C:\WINDOWS\system32\GLU32.dll 0x73860000 - 0x738ac000 C:\WINDOWS\system32\DDRAW.dll 0x73b30000 - 0x73b36000 C:\WINDOWS\system32\DCIMAN32.dll 0x6d170000 - 0x6d19f000 C:\Program Files (x86)\Java\jre6\bin\cmm.dll 0x69500000 - 0x6a218000 C:\WINDOWS\system32\nvogl32.dll 0x73aa0000 - 0x73ab6000 C:\WINDOWS\system32\mscms.dll 0x5b130000 - 0x5b172000 C:\WINDOWS\system32\icm32.dll 0x3f2e0000 - 0x3f32d000 C:\Documents and Settings\Administrator\Application Data\Sun\Java\Deployment\cache\6.0\30\3ab3ff1e-4bad8b91-1.1.1--n\jogl.dll 0x6d520000 - 0x6d544000 C:\Program Files (x86)\Java\jre6\bin\jsound.dll 0x6d550000 - 0x6d558000 C:\Program Files (x86)\Java\jre6\bin\jsoundds.dll 0x73e50000 - 0x73eab000 C:\WINDOWS\system32\DSOUND.dll 0x72d70000 - 0x72d79000 C:\WINDOWS\system32\wdmaud.drv 0x76bb0000 - 0x76bdc000 C:\WINDOWS\system32\WINTRUST.dll 0x76c10000 - 0x76c38000 C:\WINDOWS\syswow64\imagehlp.dll 0x72d60000 - 0x72d68000 C:\WINDOWS\system32\msacm32.drv 0x77b70000 - 0x77b84000 C:\WINDOWS\system32\MSACM32.dll 0x77b60000 - 0x77b67000 C:\WINDOWS\system32\midimap.dll 0x73e20000 - 0x73e24000 C:\WINDOWS\system32\KsUser.dll VM Arguments: jvm_args: -Xmx800m -Xms128m -Dsun.java2d.noddraw=true -Xbootclasspath/a:C:\Program Files (x86)\Java\jre6\lib\javaws.jar;C:\Program Files (x86)\Java\jre6\lib\deploy.jar;C:\Program Files (x86)\Java\jre6\lib\plugin.jar -Djnlpx.vmargs=-Xmx800m -Xms128m -Dsun.java2d.noddraw=true -Djnlpx.jvm=C:\Program Files (x86)\Java\jre6\bin\javaw.exe -Djnlpx.splashport=2012 -Djnlpx.home=C:\Program Files (x86)\Java\jre6\bin -Djnlpx.remove=false -Djnlpx.offline=false -Djnlpx.relaunch=true -Djnlpx.heapsize=134217728,838860800 -Djava.security.policy=file:C:\Program Files (x86)\Java\jre6\lib\security\javaws.policy -DtrustProxy=true -Xverify:remote -Dsun.awt.warmup=true java_command: com.sun.javaws.Main C:\Documents and Settings\Administrator\Application Data\Sun\Java\Deployment\cache\6.0\41\5fef8269-188889d2 Launcher Type: SUN_STANDARD Environment Variables: PATH=C:\WINDOWS\system32;C:\Program Files (x86)\Internet Explorer;;c:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;"C:\Program Files (x86)\Java\jre6\bin" USERNAME=Administrator OS=Windows_NT PROCESSOR_IDENTIFIER=AMD64 Family 15 Model 67 Stepping 3, AuthenticAMD --------------- S Y S T E M --------------- OS: Windows Server 2003 family Build 3790 Service Pack 2 CPU:total 2 (2 cores per cpu, 1 threads per core) family 15 model 67 stepping 3, cmov, cx8, fxsr, mmx, sse, sse2, sse3, mmxext, 3dnow, 3dnowext Memory: 4k page, physical 4193356k(1344024k free), swap 6034448k(3041272k free) vm_info: Java HotSpot(TM) Client VM (17.0-b17) for windows-x86 JRE (1.6.0_21-b07), built on Jul 17 2010 01:10:15 by "java_re" with MS VC++ 7.1 (VS2003) time: Sun Oct 24 22:26:42 2010 elapsed time: 467 seconds Both of these crashes occured while digging. Doing other activities does not seem to cause them.
  22. Dwarf Fortress

    Breastplates don't protect the arms. Never forget to have at least one mail shirt under a breastplate for better protection. Otherwise you end up with squads of one-armed dwarves (which oddly enough doesn't seem to reduce their ability to fight).
  23. I don't think the OP wants to allow people to pick up ANYTHING from anywhere on his deed, but instead designate a single container as a donation chest that anyone can take things from.
  24. So they could just login on two seperate computers. Trying to police a setup like this would be very labor intensive. It would probably be easier to simply make playing under multiple kingdoms a violation of the ToS and investigate on a case-by-case basis if someone complains. Either way it is going to take a lot of investigation to have any certainty about what is going on.