Root Admin Muratus del Mur Posted September 27, 2013 Root Admin Report Posted September 27, 2013 nobody changed the code lately or at least not just before issue appeared. crrnd shouldnt be used for anythign related to this, its more a way to avoid cache. I am tired to understand now but i want to, what would be the point in moving that param to the end?? param order is irelevant..or am i missing something more obvious in the link below? i recompiled flash, that "fixed" the issue with movie not loading on my end at least..but the numbers are wrong. My guess is that the flash uses a deprecated function to load the data, afterall is 8 years old... and when i recompiled it, the flash loads but the actionscript inside it is still deprecated and fails to properly load the data. EDIT : THIS IS A STUPID coding ERROR. old working link : crholder=1&siteskin=default&crname=Aramor+Assassin&creature=3&level=3&vitality=634&vitalityMax=1000&id=86798&upgrade=3 new not working link : crholder=2&crrnd=1935244391385ee4&siteskin=default&crname=Master+Lorerootian+A&creature=12&level=4&vitality=2300&vitalityMax=2300&id=64336&upgrade=3&collect= Just move the "crrnd=.." at the end. It should work. Quote
No one Posted September 27, 2013 Report Posted September 27, 2013 (edited) I am basing my assumption on a basic mistake that most are to ashamed to mention it. When using an exact list of parameters it is sometimes easier to use the parameters with the order number in the list instead of the name of the parameter. This is perfectly ok & safe until first change : - add a new parameter in the middle of the list - skip parameters that are empty and so on. In the case you mentioned Mur, it is also worth checking if during the recompilation it change the reference between name and id (I've seen this when I did an "de-compile" ). -------------------------------------------- Also, I forgot to mention something that i've seen when I first noticed the issue: - weird: there is just one creature in my inventory that shows the correct ve/vemax: a plain colorless "Master of puppets". - I have a creature with vitality=4550, vitalityMax=1750 and it displays 2% instead of 260%. So i guess that it truncates / divide by 100 the value - most creatures have ve/vemax made up from a series from the default value "123" ??? weird -------------------------------------------- This is epic: Just move the "crrnd=.." at the end. It should work. This is assuming that ... that value isnt needed, i dont know because i havent checked,.... Thank you, it made my day. Edited September 27, 2013 by No one Quote
No one Posted September 27, 2013 Report Posted September 27, 2013 (edited) Now that you made me check it , i tried something else: an online action script extractor. 1. we see from UI that the "alfa" is working (dead creatures is shown properly) var integrity = vitality * 100 / vitalityMax; var integrityTxt = Math.floor(integrity) + "%"; var vitalityplus = 0; if(Math.floor(integrity) < 50) { mcLoader3.loadClip("../img/skin/" + siteskin + "/ico_death.png", "death"); _root.death._alpha = 100 - Math.min(100, Math.floor(integrity)); } else { _root.death._alpha = 0; } See that "vitality" and "vitalityMax" are used with no "_root." and as this works, I consider this as valid accessing. Also, as it works, i consider this valid : "_root.death._alpha =" 2. vitality is not shown properly, nor computed properly , so where it makes the percentage ("integrity") it is not correct if(_root.vitalityplus > 0 && _root.vitality < _root.vitalityMax) { vittx = "grow"; _root.vitality = _root.vitality + 1; _root.vitalityplus = _root.vitalityplus - 1; _root.integrity = _root.vitality * 100 / _root.vitalityMax; _root.integrityTxt = Math.floor(_root.integrity) + "%"; _root.mcloader._alpha = Math.min(100, Math.max(Math.round(_root.integrity), 10)); _root.death._alpha = 100 - Math.min(100, Math.floor(_root.integrity)); _root.reloadbut._alpha = 100 - Math.min(100, Math.floor(_root.integrity)); } else { _root.reloadbut._alpha = 100 - Math.min(100, Math.floor(_root.integrity)); vittx = "p:" + _root.vitalityplus + " v:" + _root.vitality + " vm:" + _root.vitalityMax + "stay"; } So, my bet is that you need to "initialize" the "_root." object like _root.vitality = vitality; _root.vitalityplus = vitalityplus; ... so that the rest of the code to remain unchanged. [spoiler] this is the extracted code that I based my "advanced" research on : // _root, frame 1 var mcLoader1 = new MovieClipLoader(); var mcLoader2 = new MovieClipLoader(); var mcLoader3 = new MovieClipLoader(); var mcLoader4 = new MovieClipLoader(); var mcLoader5 = new MovieClipLoader(); mcLoader1.loadClip("../artworks/creature_" + _root.crrnd + ".png", "mcloader"); if(upgrade && !(upgrade == undefined)) { mcLoader2.loadClip("../img/skin/" + siteskin + "/cri_ico_upgr" + upgrade + ".png", "upgrade"); } if(collect && !(collect == undefined)) { mcLoader5.loadClip("../img/skin/" + siteskin + "/cri_ico_collect.png", "collect"); } if( typeof tkn == "string" && !(tkn == undefined)) { mcLoader4.loadClip("../img/interface/tkens.swf", "tokens"); } debug.text = siteskin + "#" + upgrade; var integrity = vitality * 100 / vitalityMax; var integrityTxt = Math.floor(integrity) + "%"; var vitalityplus = 0; if(Math.floor(integrity) < 50) { mcLoader3.loadClip("../img/skin/" + siteskin + "/ico_death.png", "death"); _root.death._alpha = 100 - Math.min(100, Math.floor(integrity)); } else { _root.death._alpha = 0; } _root.tokens._alpha = Math.min(100, Math.max(Math.round(integrity), 10)); _root.mcloader._alpha = Math.min(100, Math.max(Math.round(integrity), 10)); // symbol11, frame 1 if(_root.vitalityplus > 0 && _root.vitality < _root.vitalityMax) { vittx = "grow"; _root.vitality = _root.vitality + 1; _root.vitalityplus = _root.vitalityplus - 1; _root.integrity = _root.vitality * 100 / _root.vitalityMax; _root.integrityTxt = Math.floor(_root.integrity) + "%"; _root.mcloader._alpha = Math.min(100, Math.max(Math.round(_root.integrity), 10)); _root.death._alpha = 100 - Math.min(100, Math.floor(_root.integrity)); _root.reloadbut._alpha = 100 - Math.min(100, Math.floor(_root.integrity)); } else { _root.reloadbut._alpha = 100 - Math.min(100, Math.floor(_root.integrity)); vittx = "p:" + _root.vitalityplus + " v:" + _root.vitality + " vm:" + _root.vitalityMax + "stay"; } // _root, frame 3 stop(); // _root, frame 7 myVars = new LoadVars(); myVars.load("../ui/creatures/do_loadvit.php?max=" + _root.vitalityMax + "&id=" + id); myVars.onLoad = function(success) { if(success) { _root.varsloaded = myVars.varsloaded; _root.vitalityplus = myVars.vitalityplus; _root.debug = myVars.debug; gotoAndPlay("energyplus"); play(); } }; stop(); // _root, frame 10 stop(); // symbol16, frame 193 _root.gotoAndPlay("standby"); [/spoiler] ------------------------------------------ But hey, this is from one who didn't touched action script since 2001. Probably my 15 minute of "advanced" checks are wrong. Edited September 27, 2013 by No one Ackshan Bemunah 1 Quote
Root Admin Chewett Posted June 18, 2014 Root Admin Report Posted June 18, 2014 HTML5 FTW Will be working on something to finally fix it all Rophs 1 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.