Efun Explode: This efun has undergone a lot of change, exhibiting quite varied results depending on the driver. Explode, 'explodes' a string into an array of strings. The best way to see differences is to look at some examples. Amylaar Driver: Explode Exploded Array explode("","a") ({ "", }) explode("a","a") ({ "", "", }) explode("aa","a") ({ "", "", "", }) explode("baa","a") ({ "b", "", "", }) explode("aba","b") ({ "a", "a", }) explode("abab","b") ({ "a", "a", "", }) explode("abc","") ({ "a", "b", "c", }) 312 Driver: explode("","a") ({ "", }) explode("a","a") 0 /* should use simul_efun fix!!! */ explode("aa","a") 0 explode("baa","a") ({ "b", "", "", }) explode("aba","b") ({ "a", "a", }) explode("abab","b") ({ "a", "a", }) explode("abc","") ({ "abc", }) Mudos Driver: explode("","a") ({ "", }) explode("a","a") ({ }) /* should use simul_efun fix!!! */ explode("aa","a") ({ }) explode("baa","a") ({ "b", "", "", }) explode("aba","b") ({ "a", "a", }) explode("abab","b") ({ "a", "a", }) explode("abc","") ({ "abc", }) Amylaar explode behaviour can be approximated with a simul_efun fix, and by adding the delimiter to the string. The exception is using an empty string, "", as a delimiter. eg. Amylaar Driver 312/Mudos explode("abab","b") == explode("abab" +"b","b") The main reason it has been changed is so the following expression returns true, implode(explode(str,delimiter),delimiter) == str 312 fails, whereas the amylaar doesn't. It is better to use the amylaar behaviour. So that the mudlib can be used on both, the flag OLD_EXPLODE has been used. When using the explode efun, esp. in the mainmain mudlib, do the following, #ifdef OLD_EXPLODE txt_list = explode(txt +"\n","\n"); #else txt_list = explode(txt,"\n"); #endif /* OLD_EXPLODE */ This will allow the mudlib to be moved between 312 and amylaar. Zilanthius