Jump to content

Chokboyz

Member
  • Posts

    428
  • Joined

  • Last visited

    Never

Everything posted by Chokboyz

  1. Originally Posted By: Celtic Minstrel The Mac version uses ppat resources for those files - I didn't upload the map ppats because I believe they are identical to the equivalent map graphic (termap.gif in the files I uploaded). If they aren't, though, I'll gladly add them (probably to pixpats.gif). They are, but scaled down ... I've extracted bitmaps from files and scaled them down, but the result was not really pretty (as soon as the terrain was not plain (bushes, ...) the square appears somewhat garbled). So, if you find time, i'll be glad you upload them Originally Posted By: Celtic Minstrel By the way, are you using the files I uploaded as they are (except maybe converted to BMP) or did you copy-paste their contents on top of the Windows graphics? I'm using your files (converted to BMP) except for MIXED.BMP which i've modified by copy/pasting from termaps.gif/animmap.gif. Originally Posted By: Celtic Minstrel And how many of the graphics are actually different? I had the impression that not all the graphics were brighter on Windows (mainly just the terrain graphics). As far as i can tell, you're right. The only changes i've founded were terrains (animated/non-animated/map miniatures/frills) and some fields (poison, zap, ...), plus some minor differences (boats seeming higher qualities on Mac, ...). I didn't find much (read any) difference between Windows and Mac PC/Monsters/Items/Text/Icons graphics. I may have missed some though ... Originally Posted By: Celtic Minstrel Another thing – if I recall correctly, the graphics are stored in the Scenario Editor folder, right? As opposed to a graphics subfolder? The latter would probably be preferable... though it doesn't matter that much. Ormus has changed that a bit : the graphics are stored in an "Images" folder in the executable directory (hence outside of the Scenario Editor folder, which was the original way). Originally Posted By: Celtic Minstrel EDIT: Oh, by the way, did you or Ishad Nha incorporate my beginnings of a rearrangement of the editor buttons? Apart from toying with the animations and custom graphics, i've not really worked on the Scenario Editor code. Ishad Nha may have though ... Chokboyz
  2. Originally Posted By: Celtic Minstrel I'm not quite sure what you mean. If you're referring to the fact that some of the terrains are drawn on the map using pattern fills, the Mac version does do that. Once again, i admit it was pretty confusing ... I was indeed speaking of pattern filling (if you have access to the mixed.bmp file of the Windows version, these are the slightly larger squares on the top right of the bitmap). Unfortunately, I couldn't find such patterns in the graphics you've provided (have i forgotten to get a file ?). So, the map is drawn with mixed graphics ... Originally Posted By: Celtic Minstrel The frills that exist in the Mac version are the top row (cave) and the third in the second row (grass corners). The others I just added for completeness; at the moment they are unused, but I intend to change that eventually. Ok, so this is like Windows ... I'll see if we can use the remaining frills without much rewriting. Thanks, Chokboyz
  3. I've added an option (switch for now) to use Mac (darker) graphics with the Win32 version. The only changes i could notice were in terrains sheets, field sheet and maps sheets (the pc, monsters and items graphics are the same)... Some things were unclear though : Does the Mac graphics have an equivalent of the rough graphic squares used in Win32 to draw on the map, or does it uses animmap/termap exclusively ? (for example, if you put a hill square with two boulders on it, will it appears like that on the map or rather like a plain hill square ?) Are all the frills used in the Mac version ? (in Windows, only the cave frills are used; the others two (three) doesn't even exist !) If i find the time, i'll try to add the Mac compatibility code ... (then i should need Mac saves to test it ) Chokboyz
  4. Originally Posted By: Celtic Minstrel Then it compares the first flag to check if it's a valid save. Since Windows uses the same flags as Mac, this check should succeed in two cases: the file is a Mac file, but the processor is PPC; or, the file is a Windows file, and the processor is Intel. The latter is the case here, so it enters the if statement and then checks to see if the processor is Intel (it is). And then it sets the format to old_win. I'm a little confused here ... Since the flags are the same on the Windows and Mac, how is the code supposed to recognized them ? (the processor being Intel is not a valid check : an old format Mac game would be flagged as Win old format as soon as the processor is Intel ...) And aren't win_flags[] and mac_flags[] the same thing ? I must miss something ... Chokboyz P.S : i will also need Mac saves for testing if I decide to implement this
  5. Originally Posted By: Celtic Minstrel And loading Windows saves does not work, so I'll need to work on that too. It seems you only check if the file is new format in your code (load_party() in FILEIO.cpp). Because your processor is Intel and the Windows file doesn't have a 0x0B0E town flag, it is considered a legacy Mac file and then treated as big endian ... It should obviously not Or am i mistaken ? I wonder if i should implement this backward cross-platform compitibility too ... Chokboyz
  6. Originally Posted By: Celtic Minstrel Oh, if someone could post a Windows save file, or point me to where I can find one, that'd be helpful... I've uploaded two save files (one at start-up, the other in the Valley of Dying Things scenario) at http://code.google.com/p/openexile/source/browse/#svn/trunk/Win32/Temp Chokboyz
  7. Originally Posted By: Celtic Minstrel Yet, that doesn't explain why Sounds got the error and Graphics didn't. It's simply that Graphics loading somehow mess with the working directory Originally Posted By: Celtic Minstrel And yay! It works now. Good job And on to the release ? Chokboyz
  8. Originally Posted By: Niemand (As I've mentioned before, I'm suspicious that the working directory may not be the same under these two different launch scenarios.) Shifting directory was exactly the Windows problem with launching custom scenarios. The fix made was the one that you mentioned, so we're suspecting the same thing here Chokboyz
  9. Try loading something else than Sounds after loading Graphics. If it behaves the same way, it's likely the problem occurs while loading the first ressource. Would it somehow mess with the directory ? Does those lines give an error ? Quote: char *path = "Scenario Editor/Blades of Exile Sounds"; error = FSPathMakeRef((UInt8*) path, &gRef, false); By the way, i assume you checked all your ressources ... Chokboyz
  10. Originally Posted By: Celtic Minstrel How would fixing the Giant Strength bug break old scenarios? Surely scenarios designers would have been aware of the glitch and used the item level field to specify the item ability strengh. Fixing it would requires checking every item affected in every scenario, to see if the ability strength needs to put back in the correct field ... Or maybe no one used those items A few corrections done to the Bladbase.exs : Wolves and Worgs are Hostile A by default. The Scale Necklace now summons a Giant Lizard (like in Exile III ...) Mauves slime are now a type 1 summon. For consistency, the Helm of Speed now gives Occasional Haste. Amber Periapt now have an Ability Strengh of 4. Protection items and Nagas have been left untouched as there was no error after all. Remaining open questions : Should Black Unicorns be Beast ? Magical Beast ? Should Gold Unicorns keeps their paralysis touch ? I wonder if there's a way to see items properties in the Exile III files (hexediting ?) ... That would give us mostly correct default values. Chokboyz
  11. Originally Posted By: Celtic Minstrel Just checking – is this in the "Blades of Exile Base" in the repository? Yes, most (if not all) of them are ... Originally Posted By: Celtic Minstrel Does anyone know if it's summonable by Weak Summoning in Exile III I haven't been able to summon a mauve slime using any summon spell (excluding capture soul/simulacrum of course). But i kinda remember summoning mauve slimes while playing Exile III, so i'm not totally sure ... Originally Posted By: Celtic Minstrel I'm not even sure they're broken – don't they use the Protection field which is also used for shields Yes, they do. Like you, i'm wondering if they possess the Protection ability at all ... Originally Posted By: Celtic Minstrel As for the Ogrish/Giantish Gauntlets, I think that's a game bug rather than a bladbase bug. Should we fix that ? (then again, all scenarios using those items would need to be fixed ...) I agree with you on the rest of the errors. Chokboyz
  12. Here are some uncorrected errors in the present bladbase.exs : Worgs and Wolves start out as friendly The black Unicorns begin the game as reptile (is it a beast ? magical beast ?) The default Bladbase Scale Necklace summons Empties (working Empties). Should summon Giant Lizards ? Naga, has paralysis touch, is this correct? Mauve slime designated as summon type 3 monster, should be type 1 ? Gold unicorn, has paralysis touch, is this correct? Item #220, the Helm of Speed, has the speed ability, but in all the other Exile games it had the occasional haste ability. Protection items (rings) have an ability strength set to 0 (and even no ability set, should it be protection ?). Amber Periapt has an ability strength (poison protection) set to 0. Should it be 4 like the basic necklace ? Although the Ogrish Guantlets and the Giantish Guantlets (Items #227 & 228) have different ability strenghts, they still effect your characters in the same way. The only difference between them is that the Giantish Guantlets cost more. The Giant Strength ability (Along with several other abilities like Skill) is not effected at all by its ability strength, instead, its item level is its ability strength. Any comment on how to best correct them (or if they should be left alone) is welcome ... If you find (or think of) another error don't hesitate to mention it (some errors above were present in the file of the second post). Chokboyz
  13. Originally Posted By: Celtic Minstrel Close – it contains the terrain for all four currently loaded sections, combined into a single array. Indeed Originally Posted By: Celtic Minstrel Yes we do. In the Mac version it's called "Blades of Exile Base" instead of "bladbase.exs". Note that I'm not actually using the one from Drakefyre's link at this time. If you want to fix bladbase errors in the Mac version of it, go right ahead. Or you could just fix them on the Windows side and post them here so I can fix them in the Mac version. Ok, i'll fix some errors i've spotted and report at http://www.ironycentral.com/forum/ubbthreads.php?ubb=showflat&Number=164683#Post164683 Originally Posted By: Celtic Minstrel I don't think I'll implement that right now. I'm more interested in getting saving and loading of new-format parties, getting the game to run from the Finder, and then moving on to improve terrain and tool palettes in the scenario editor... and animating the terrain in the editor seems trivial in comparison. Yup, i agree on that (to be honest, I was just toying with the scenario editor code and get a little carried away ). I've made a comment as suggested. Originally Posted By: Celtic Minstrel Or did you write the code for displaying custom graphics yourself? I have written my own (temporary ?) version of the custom drawing code. Originally Posted By: Celtic Minstrel Actually, no. At least, I don't think so. The terrain of the current town is stored in the save file. We're not speaking of the same thing I was thinking of the fact that leaving a town erase all changes in this town ... Besides, changes in the current town (if any) only will be saved (because of town reset when leaving) ... Chokboyz
  14. Originally Posted By: Celtic Minstrel Wasn't there a complaint about terrain changes outdoors not surviving save-and-reload That's also an "in town" problem ... To solve that would requires to permanently change the terrain type in the town or outdoor struct (hence writing in the scenario file ...) That's obviously not a reasonable choice ... Unless saving all towns/outdoors structs or rewriting the outdoor/town loading, fixing that seems pretty hard ... (moreover out only refers to the outdoor section you are in, if i'm not mistaken) We could also work on a copy of the scenario ... To answer one of your question a few posts above, my compiler (and c libraries) indeed support 64-bit integers, but i have to use %I64i instead of %lli. I've also adopted your changes from short to unsigned short. One question, do we have a common bladbase.exs (e.g the one from this thread http://www.ironycentral.com/forum/ubbthreads.php?ubb=showflat&Number=164683#Post164683) ? I didn't find one in Google Code ... Originally Posted By: w-dueck Here's a feature request: Have an option to display animated terrain as animated (eg. go through all 4 frames when editing the map) in the scenario editor. I've played a little with the editor code and implemented that (along with the display of the custom graphics). The animation would play on the town map and in the edit terrain dialog. Providing the code at this link http://www.freewebs.com/ishadnha/2009BoESESource.zip is Ishad Nha's latest, it works (and i will gladly upload the changes to the Google Repository if Ishad Nha wants so ...). Chokboyz
  15. When the party is split up, Affect PC special nodes should only affect the active PC has been fixed. To prevent possible exploits the Kill/Raise Node has not been changed ... Don't hesitate to discuss the remaining bugs ... Chokboyz
  16. Originally Posted By: Celtic Minstrel From what I can see, out_info_type and the variable expl declared with it are never used, and the out_e variable is used instead. Is that right? I'm thinking I probably don't need to save out_e, out, and expl to the file since the former two are populated in build_outdoors(), called just after loading, and the latter seems to be unused. out_info_type is indeed unused. The only expl used in the Windows code is a local boolean in the draw_map() function. The out_e array is heavily used and even saved (it holds if an outdoor square has been explored or not), so it should be saved (i think) ... Neither out , nor outdoors are saved in the original version of the code. Hope it helps, Chokboyz
  17. Ok, when party is split the lone pc only will now be affected by Affect Health/SP/Skill Points/Statistics and Give Mage/Priest Spells. The Kill/Raise Nodeis left untouched for compatibility reasons (although we can implement a "kill only present pc" switch via pic if revelant). Sample of the code used (Affect Health Node) : Click to reveal.. case 82: for (i = 0; i < 6; i++) if(PSD[304][0] > 0 && adven.main_status == MAIN_STATUS_ALIVE) //party split ? adven.cur_health = minmax(0, (int)adven.max_health, adven.cur_health + spec.ex1a * ((spec.ex1b != 0) ? -1: 1)); else if (PSD[304][0] == 0 && ((pc < 0) || (pc == i))) adven.cur_health = minmax(0, (int)adven.max_health, adven.cur_health + spec.ex1a * ((spec.ex1b != 0) ? -1: 1)); break; Originally Posted By: Celtic Minstrel used Fireball against them, but after the fiery explosion I saw them take what appeared to be weapon damage. Seems like a problem with boom_space() or add_explosion() ... Speaking of which, in your code, you've merged boom_space() and pre_boom_space() function and commented the type = type % 10 line, but the boom_space() function is called in damage_monst() with type = 51 ... The boom_space() function then does nothing because type is not between 0 and 4. That doesn't seems to be the cause of the bug mentioned above (it's much likely add_explosion), but that can be a potential glitch ... Originally Posted By: Celtic Minstrel Custom scenarios are now detected, and the three default scenarios are excluded from that list. Once I write the Save Party function, it should be ready to release... Good job Hope it helps, Chokboyz
  18. Originally Posted By: Ishad Nha Monster type 0 is a null monster, the char was unsigned, so there is no possible way to record "-1" for a non-existant monster, so 0 is used instead. True, but in the Windows code (thus supposely in the Exile III code) the summon type was short and the checks completely valid (if < 0, do nothing). The problem was that with this code, summoning monster 0 was possible (and summoned monster 0 never disappeared because of the range of the "end of summoning ?" check). So it should indeed be fixed. Originally Posted By: Celtic Minstrel Note: Anywhere an unsigned char variable is used to store a terrain type or a monster type it must be changed to unsigned short! Otherwise we won't be able to extend the limit on the numbers of monsters and terrains. Local variables in particular should be looked out for. Added to ToDo list ... (idem with gold, food, day (?), ... ?) Originally Posted By: Celtic Minstrel the game can now load an old-format savegame Originally Posted By: Celtic Minstrel because I have no idea which scenario my parties are in Load the party in memory and read the party.scen_name field. That won't help if not in a default scenario though Hope it helps, Chokboyz
  19. Originally Posted By: Celtic Minstrel Well, not really. It refers to a monster type, which is a number greater than 0. So, I think I'll change that return statement to return 0 instead of -1. Otherwise we might get random occurences of Monster #255 appearing (or worse, Monster #65535, which most likely doesn't even exist). It also seems to me that the "Summon failed" message in that function is somewhat redundant... Indeed, it doesn't need to be signed (and even shouldn't) ... If you intend to left summon as unsigned short and correct the return value, in the function monst_cast_mage(), the r1 value in summon checks must also be correct. The "summon failed" message seems to be in fact redundant ... Chokboyz
  20. Originally Posted By: Celtic Minstrel Since summon is an unsigned char Interestingly enough, Windows code declares Code: short summon; And that may interest you (straight from the Mac code) Code: short get_summon_monster(short summon_class){ short i,j; for (i = 0; i < 200; i++) { j = get_ran(1,0,255); if (scenario.scen_monsters[j].summon_type == summon_class) { return j; } } ASB(" Summon failed."); return -1;} Seems like summon was supposed to be signed after all (and yes, the Empties are "No summon" type). Originally Posted By: Celtic Minstrel monst_fire_missile(), the skill parameter is unused. Surely it should be used? If i'm not mistaken, the missiles damages are fixed ... The skill parameter is oddly (again) inexistant in Windows code ... Hope it helps, Chokboyz
  21. Originally Posted By: Celtic Minstrel In monst_check_special_terrain(), when checking is_force_barrier(), there's a check for the town number being greater than 20, which means that a monster can't break down a force barrier in towns 0 through 19 but can in towns 20 and up. That's also present in the Windows code. That ought to be a relic, since with this code monsters with Permanent Martyr's Shield won't mind getting in fire walls (why not ...) and monsters with Paralysis Ray won't mind getting in ice walls (that's weirder) ... Originally Posted By: Celtic Minstrel The question, then, is: should we simply remove it, as I have, or should we replace it with a check for town size? That mainly depends on Ishad Nha's response. I would remove it since i doubt that breaks any compatibility (don't hesitate to correct me here) or at least do as you proposed : change the check to large town ... I've finally found the real cause of the torches and campfire squares appearing as colored dots on the map, and that is another relic of Exile III ... The main culprit was the boom_space() function. That function copied the field effect to a temporary location combining it with terscreen.bmp blank effect (for transparency), then draw it back into the game. The bmp it was copied to was mixed.bmp. Unfortunately, mixed.bmp changes from Exile III to BoE and the (once) white square there has been filled with the last animated terrains. So each time you boom a space (hit a monster, cast a fireball, walk on a "zap" floor, ...) this part of the bmp (in the memory) will be overwritten, hence the colored dots. I've removed the copying and adapted the function (the transparency function had already been fixed). That fixed the bug. By the way, I don't think this problem appears on Mac (as no copying is done as far i can tell). Hope it helps, Chokboyz
  22. Ok, i guess we will revert it back to the original behavior then ... Chokboyz
  23. Quote: I think there were some cursed arrows made at some point designed to heal instead of hurt, without making that explicit. So I wouldn't call that a bug either, just poorly advertised. When used on PC such arrows would damage them instead of healing them. The question is to fix that or not (as it always heals monsters) Chokboyz
  24. Originally Posted By: Celtic Minstrel I'm not sure if they do the same thing, but they at least have in common that they do something beneficial to the target, which usually is not desirable. Strengthen Target heals 20 HP to a monster (whatever the ability strength) and Heal Target heals a random number of HP (influenced by the ability strength) to the target (previously monster only, it was damaging the pc. The Strengthen effect gives a "Nobody here" response if used on a pc). Chokboyz
  25. Originally Posted By: Celtic Minstrel Uh, what? The array is [2][2], yes, which means its valid indices are [0][0], [0][1], [1][0], and [1][1]. I'd say that's definitely 4 sections. You're, of course, right ... Originally Posted By: Celtic Minstrel I don't see any reason to load the entire outdoors at once. What i wanted to suggest was that an array pointing to every outdoor section could be good think (to avoid navigating using universe shift up/down/left/right) Originally Posted By: Celtic Minstrel With the map hiding for town, I'm making it a property of the town. So, one town may have a hidden map while another doesn't. If we also make it a property of the outdoor section, we can't use the same code, because there are 4 sections loaded at once, not all of which have hidden maps. So we'd still have to draw something to the map, that is, the terrain of the adjacent sections whose maps are not hidden. Can't we make a check to see if the party is in a section to be hid (see party.i_w_c) ? Originally Posted By: Celtic Minstrel Okay, yet another thing for me to fix... I've provided a possible fix in the Edit section of the previous post Chokboyz
×
×
  • Create New...