Jump to content
  • 0

[SOLVED] Weird Map Server Crashes


Hayato

Question


  • Group:  Members
  • Topic Count:  14
  • Topics Per Day:  0.01
  • Content Count:  66
  • Reputation:   10
  • Joined:  11/15/17
  • Last Seen:  

Hi guys.. i cant explain this at all.

im using 2015-11-04aRagexe / kRO_FullClient_2017-10-09

everytime i "try to" kill a MVP my map server crashes, always right before they die (probably the killing blow)

map server also crashes when i talk to the deer guy in the new beginners map. when i create a char the first map inside the ship theres just water nothing else and i cant move because some textures are missing.

could somebody help me fix this please?

PS: no error message.. just  "Map-server #0 has disconnected."

 

 

screenrAthena001.jpg

Edited by rye305
Link to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 0

  • Group:  Members
  • Topic Count:  0
  • Topics Per Day:  0
  • Content Count:  3
  • Reputation:   0
  • Joined:  10/07/17
  • Last Seen:  

Is this the latest rAthena? If it is so, you need to apply a fix (or wait for PR into master and disable the Achievement feature).

diff --git a/src/map/achievement.cpp b/src/map/achievement.cpp
index 8b20165..7a1207a 100644
--- a/src/map/achievement.cpp
+++ b/src/map/achievement.cpp
@@ -171,13 +171,13 @@ bool achievement_remove(struct map_session_data *sd, int achievement_id)
  * @return True on completed, false if not
  */
 static bool achievement_done(struct map_session_data *sd, int achievement_id) {
-	auto &adb = achievements[achievement_id];
-	struct achievement *ach_data = sd->achievement_data.achievements;
+	for (int i = 0; i < sd->achievement_data.count; i++) {
+		if (sd->achievement_data.achievements[i].achievement_id == achievement_id && sd->achievement_data.achievements[i].completed > 0) {
+			return true;
+		}
+	}
 
-	return (std::find_if(adb->dependent_ids.begin(), adb->dependent_ids.end(), [&achievement_id, &ach_data]
-	(const int &d) {
-		return (ach_data[d].achievement_id == achievement_id && ach_data[d].completed > 0);
-	}) != adb->dependent_ids.end());
+	return false;
 }
 
 /**

Credits to @Cydh for the fast fix.

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  14
  • Topics Per Day:  0.01
  • Content Count:  66
  • Reputation:   10
  • Joined:  11/15/17
  • Last Seen:  

3 hours ago, izrin394 said:

Is this the latest rAthena? If it is so, you need to apply a fix (or wait for PR into master and disable the Achievement feature).


diff --git a/src/map/achievement.cpp b/src/map/achievement.cpp
index 8b20165..7a1207a 100644
--- a/src/map/achievement.cpp
+++ b/src/map/achievement.cpp
@@ -171,13 +171,13 @@ bool achievement_remove(struct map_session_data *sd, int achievement_id)
  * @return True on completed, false if not
  */
 static bool achievement_done(struct map_session_data *sd, int achievement_id) {
-	auto &adb = achievements[achievement_id];
-	struct achievement *ach_data = sd->achievement_data.achievements;
+	for (int i = 0; i < sd->achievement_data.count; i++) {
+		if (sd->achievement_data.achievements[i].achievement_id == achievement_id && sd->achievement_data.achievements[i].completed > 0) {
+			return true;
+		}
+	}
 
-	return (std::find_if(adb->dependent_ids.begin(), adb->dependent_ids.end(), [&achievement_id, &ach_data]
-	(const int &d) {
-		return (ach_data[d].achievement_id == achievement_id && ach_data[d].completed > 0);
-	}) != adb->dependent_ids.end());
+	return false;
 }
 
 /**

Credits to @Cydh for the fast fix.

ummmm.. sry but how do i apply this file? do i create a new .txt -> copy paste this code -> save-> rename to .diff. and then patch with tortoise?

Edit: well yep.. i cant get it working. can you do a step by step guide how to patch diff files please?

Edited by rye305
Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  0
  • Topics Per Day:  0
  • Content Count:  3
  • Reputation:   0
  • Joined:  10/07/17
  • Last Seen:  

10 hours ago, rye305 said:

map server also crashes when i talk to the deer guy in the new beginners map. when i create a char the first map inside the ship theres just water nothing else and i cant move because some textures are missing.

For the missing map, in your GRF file (not data.grf/rdata.grf), since you have the latest kRO, remove this map: 

iz_int.gat
iz_int.gnd
iz_int.rsw
iz_int01.gat
iz_int01.gnd
iz_int01.rsw
iz_int02.gat
iz_int02.gnd
iz_int02.rsw
iz_int03.gat
iz_int03.gnd
iz_int03.rsw
iz_int04.gat
iz_int04.gnd
iz_int04.rsw

Or get the latest map and replace into your GRF from https://github.com/zackdreaver/ROenglishRE/tree/master/data

1 hour ago, rye305 said:

ummmm.. sry but how do i apply this file? do i create a new .txt -> copy paste this code -> save-> rename to .diff. and then patch with tortoise?

Edit: well yep.. i cant get it working. can you do a step by step guide how to patch diff files please?

Yes, save as .diff file and apply patch with tortoise. But, only if you use the current/latest rAthena-master.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...