Jump to content

Ishad Nha

Member
  • Posts

    2,420
  • Joined

  • Last visited

Everything posted by Ishad Nha

  1. Kernel Knowledge was the coordinator of the Windows compilation. I e-mailed him and he said that it was done on KDevelop, a Linux program. (Address: chrono232@fastmail.fm ) So far I have not been able to compile it on Dev-C++ or Borland, I think that is due to language specific features. What we really need is source that can be compiled on common Windows compilers so people can experiment with their favorite new ideas.
  2. Yes, though you missed the announcement because it was in another forum, not because you have been away from this board for a while. In the Blades of Avernum Editor forum there was a topic: The Future of Blades of Avernum (Page 1) (I have copied and pasted the relevant text below). Board Administrator Member # 1 Karma: written December 09, 2006 11:51 AM -------------------------------------------------------------------------------- Some quick notes before I go out the door. I have plans to release the code of Blades of Exile before too long. First, though, I have to find it. The Windows code is trapped on an old machine, and I need to figure out how to get it out. The Blades of Avernum code won't be made public for quite a while, though. It does still sell, slowly, and I want to try to recoup a bit more before I give it away. Reducing its price to $15 has helped sales, and I am still generating new people to play your scenarios. About the Unhandled Exceptions. I would bet money the situation here is caused by using calls to affect characters/items/whatever that are out of range. (Like setting the level of character -3, or character 220.) Whenever I looked at a scenario with this sort of crash, the problem was accessing something out of range. Pre-Intel Macintoshes handle looking out of bounds of an array fairly well. Windows (and Intel Macs) frequently crash under the same circumstances. That's why you're getting the crashes when you move the thing from Mac to Windows. A lot of this is my fault for not putting good enough error checking in. I skimped on this because I was freaking out over how long it was taking to make the scripting engine, and it was a real mistake. If I have to patch Blades of Avernum to make it work on Vista, I'll also try to tighten the script error checking up a bit. - Jeff Vogel -------------------- Official Board Admin spidweb@spiderwebsoftware.com -------------------------------------------------------------------------------- Posts: 668 | From Seattle, WA, USA | Registered: Sep 2001 | IP: Logged Though if the official BoA Editor was anything to go by, very few compilers will be able to handle the BoE source code.
  3. I am informed that the basic meaning of the Code of Conduct is to avoid the use of hex – editing as a means of bypassing shareware barriers. So uses of hex – editing for customizing BoE terrain should be acceptable. Ditto uses here. That of course still leaves the massive number of items to be sorted through and prioritized...
  4. Yes, that is correct as far as I know. I am informed that the basic meaning of the Code of Conduct is to avoid the use of hex – editing as a means of bypassing shareware barriers. So uses of hex – editing for customizing BoE terrain should be acceptable.
  5. I just actually read rather than glanced over the Code of Conduct. As I understand it, the whole Blades of Exile game is about to become open source. Now the Code applies to all Spiderweb games, which are usually never open source. Should the code be amended to cover an open source BoE editor?
  6. It is easy to have Artifacts Hall for BoA, there aren't that may scenarios. Exile scenarios that have custom items could be very numerous, after all there are around 300 BoE scenarios. Obviously you will have to limit the number of scenarios covered by any one version of BoE Artifacts Hall. Hence you must have a selection criteria. Then you will have to check for customized items in each scenario, compare names listed in the scendata.txt for each scenario with item names from the default list? ( Alternately, here is where hex - editing really comes into its own, you can use it to draw up tables listing all properties of an item. )
  7. Porting The 3D Editor crashes disastrously every time you attempt to port any BoE scenario. While the official Spiderweb editor should port properly, within the limits of its porting algorithm. The actual process used suffers all sorts of flaws and glitches. For instance, you can't customize the translation tables for items, terrain and monsters unless you hex - edit. Porting is easy enough, I tried both Valley of Dying Things and Inn of Blades, both were ported properly. Newly ported scenarios will be found in the Data folder not the BoA Scenarios folder, after all they are not ready for immediate play anyway. The folders will have names like bladeinn.bas or VALLEYDY.BAS.
  8. Customizing the first 91 terrain slots. This is impossible using the official Editor; the changes will be lost as soon as the Edit Terrain Types screen is closed. However, this is easy to do via hex – editing. (Hex – editing is alteration of the exs file using the MS-Dos Edit command, or its Mac equivalent.) The procedure is: Open the MS-Dos Edit command, “cmd.exe”, probably found in Start Menu > Programs > Accessories. Type “Edit”, and press Enter. Choose File menu and Open the relevant exs file: note that “Open Binary” is simply a word wrap feature. Tweaking of Terrain Here L equals the Line Width. When L = 16: line 1,962 column 9 thru line 2,218 column 8 hold the terrain listings. When L = 70: the listings are found from line 449 column 25 through line 507 column 60. The following values are true for Windows scenarios. Column 9: Picture number in ASCII code. Column 10: Picture number in ASCII code. Column 11: Terrain blockage (0 thru 5) list. Column 12: Extra values. Column 13: Extra values. Column 14: Special properties. Column 15: Transform to what? Column 16: Can fly over? Listed on the line below Column 1: Can boat over? Column 2: Blocked to horses? Column 3: Light radius Column 4: Step on Sound Column 5: Shortcut key, if any*. Columns 6,7,8 appear to be empty. Picture number is recorded as a two – bit number. In Windows scenarios column 9 is the base – 256 digit while column 10 is zero or 1*256) *It is recorded as the actual letter, not as an Avernum-style numerical encoding. It too is listed on the line below. Control + Key Inserts Hex – editing is done using the ASCII character set. Really you will need a list of the entire character set. This can be copied from many programs. When L = 70, line 4,308 of the editor program has about four – fifths of the total symbols. Once you have the list you can just copy and paste from it. Some symbols can be entered directly because they are on the keyboard while others can be entered as shown below. Control + P Inserts After pressing Ctrl + P, press Ctrl + the appropriate letter of the alphabet to get the ASCII symbols with numerical values 1 through 26. Unless it is one of the letters listed in the paragraph above. Press Ctrl + [ to get the symbol with the value 27. Some symbols can be entered without first pressing Ctrl + P: Code: Key 2 \ ] 6 - Space BackspaceValue 0 28 29 30 31 32 127 They are all symbols above, and those entered by the letters B,I,J,K,N,O,T,U. Pressing Ctrl + M gives the two symbols having the numerical values, V, of 13 and 10. Apparently, if the document has not been saved already: Ctrl + I and Ctrl + M won't have the same effect. The Space, V = 32, can also be entered via the Spacebar. Quality control, type the End button, the cursor should move to column L + 1. So if L = 70 the cursor should move to column 71. If it doesn’t you have something that can really stuff up the scenario. Morality of hex – editing, I don’t think Jeff really minds, the program is about to become open source soon anyway.
  9. Possibly the best approach is to alter the code so that it can be compiled on any common compiler. Then give people tips about how to write their own favorite features into it. Thus everyone can test their favorite ideas here and now, and see how useful they are in practice. As for the Edit menu, it is the only menu not mentioned in the BoA Editor Docs. I had to go into the source file “Bl A Editor.c”, lines 871 thru 900, to figure out what it does. My guess is based upon lines like this: “if ((copied_creature.exists() == FALSE) && (copied_item.exists() == FALSE) && (copied_ter_script.exists == FALSE)) {” Authors sometimes want two or more versions of the same town in a given scenario, the quickest way to achieve this is to import the earlier version into the slot reserved for the latter. So if town 1 and town 9 are the same town before and after a given event, import the town 1 into the place reserved for town 9. Currently in importing a town, everything is imported in one go. Would there be any use for the individual importing of each feature: special nodes, scripts, floors, heights, terrain and monsters? Ditto, outdoor sections are imported in one hit too. In the MS-Dos Edit command, here and now some things can be pasted individually: floors and heights for instance. The beginning and the end are usually easy to spot for each section. You won’t even need to manually adjust the end of each line. (What I am referring to here is: if the floor for town 1 starts at column 11 on some line and the floor for town 9 starts at column 23 on some other line, you can’t immediately paste the latter into the former. One trick is to use the Save As command to create a (wholly expendable) second bas file, then delete the first twelve characters from the floor listing for town 1. Save the bas file then close it. If you then re – open it, the floor for town 9 should start at the desired column 11. You can then paste town 9 floor from the expendable second bas file into the listing for town 1 in the original file. In the Edit command deleting 12 characters won’t have any immediate effect on the next line, it won’t cause every following character to move up 12 spaces.)
  10. The computer is always right. If you have a type 215 terrain that is a sign the Editor will always treat type 215 floors as being signs! It will go through the whole rigmarole of asking for the text of the sign&&. Of course the party won't be able to use the "sign" in the game. Simplest solution is to make all real signs have terrain numbers greater than 255, but that will require a bit of changing of terrain.
  11. My Christmas Wish List of Improvements What we really need is a 3D editor that can be easily compiled on common IDEs like Dev-C++. If the Editor could be re – written to provide for a rectangular application of the Blocked property, you would not need blocked varieties of floor. Currently floor and terrain types can be applied by hollow or full rectangles, something like that is needed for the Blocked property. This would be in addition to the existing tool, #32. This function could be extended to placed objects too. All these problems are found in both versions of the Windows Editor: Needs a whole lot more (Shift + letter) hot keys. If you have the Caps Lock on, you can select functions with the keyboard while using the mouse with your right hand. Could support the functions fl_ed_icon_adjust and te_ed_icon_adjust. I suspect they are meant to show the icon adjustment in the 2-D display. The commands in the Edit menu are not explained in the Editor Help menu. Lines 886… of the file “Bl A Editor.c” suggest that the commands involve copying and pasting of creatures, items and terrain scripts. Creature default script is not implemented in the editor. (It is not automatically assigned to creatures having that script.) When you try to place special encounter nodes, it suggests states like 0,1,2 which are already defined elsewhere. The automatic terrain placement zones, (the terrain sequences 11 thru 22, 25 thru 36, 45 thru 56 and 59 thru 70) need better handling. It might be handy if you can totally customize whether and where they occur. Floor terrains will be “signs” if they have the same number as a terrain type that is a sign. If, for example, terrain type 194 is a sign then floor type 194 will be a sign too. As the supply of custom graphics increases, so will the number of scenarios with 200+ floor types. Changing which terrain types are signs will cause a corresponding change in the floor types. Terrain shortcut keys can only be given to individual types of terrain, not to whole sequences as is the case for floors. There is a funny “OK” in the Set Variable Town Entry page. It occurs on the fourth line. This is a problem in the 3D Editor only.
  12. The 3D editor is wonderful, except for porting, where it crashes infallibly. It has never worked for me once. One thing missing from Avernum is the Exile type 4: secret door node. One substitute is to design a specific terrain, tree or whatever, that can be walked through. Another approach is to have two (or more) out_move_party(x,y) nodes represent this feature, one node on each side of the terrain. Another solution is to have the terrain toggle to type 0, when the party activates a certain node. The snag here is that the party activates a special encounter before it steps into a square, this could be bad if they step into the square activating the node above. (The party is standing in the square containing the toggled terrain, which is currently type 0, it moves onto the special node, the terrain where they are standing is toggled back to impassable terrain, they can’t move anywhere. Unless they have an item that permits uses of the out move party(x,y) call, with random choices of x,y.) One likely problem: porting a scenario where you don’t have the list of what SDF, Stuff Done Flag, coordinates were actually used. Mercifully, Blades of Avernum has three times more places for the SDF flags than were found in Blades of Exile. If you want to add new flags to a ported scenario you just use coordinates that are found in BoA and not in BoE. As far as I can tell, any SDF should be safe if it has a 10+ second coordinate, if it is of the form (X,10+). Other than that, you will have to learn what they do the hard way. Many of them will be self explanatory, used to record the displaying of one – shot messages. From the list of Rated BOE Scenarios: Bandit Busywork - 3.91 (8.5/2.0). So this is not from the top ten scenarios. Unless you are the author you are doing someone else’s world of course. If you want the top – notch authors to ever port their own work, it helps if the basic method has been developed and demonstrated beforehand. I have mostly finished a port of River and Leaf, it really could do with some cut scenes&. (Also having trouble trying to use some BoE graphics from the Blazing Blades, grass is a lot brighter than everything else.)
  13. Right, the wall problem is what you guys were talking about, I become indifferent to it. I don’t think it can be solved in the near future, how do you program aesthetics into the editor? (Symmetry is aesthetic to me but programming it could be tough.) Granted the town walls are usually a pill, but I have a shortcut for cave walls. Use the cave floor(BoE) from the Blazing Blade for the floor then couple this with conventional walls. Here I am relying on my ability to customize the translations. In porting I am really thinking of the greatest Exile scenarios, ones that are worth the effort. At some point I will have to finish the three way guide, this compares the BoE Editor Help file descriptions of the BoE nodes, the Bl Fileio.c source code translations for them and the descriptions of the BoA calls.
  14. Yes, Kel, I have tried it on a few scenarios, the process is quite straightforward, that is why I know it only takes a few seconds.* An entire scenario appears as if by magic, granted it may not be terribly playable. The conversion I find technically fascinating, trying to express apples as oranges. Thralni, entire towns had to be re – done? I haven’t heard about that, I don’t know why this might be. There may be problems with translation of terrain perhaps; it can look pretty shapeless after porting. One problem that can’t be solved easily is the fact that in BoE the party occupies only one space while it is exploring, unlike Avernum. Another problem is that the current Windows version of the official editor wrongly rotates the coordinates of all town specials! (The dubious thrills of ported dialog scripts?!? I have zero literary talent; I have trouble writing appropriate questions for the scripts. By contrast, deciding upon which states to give each node is not too hard.) Custom graphics, thank God for Blazing Blades and the Louvre, even so there are many graphics that have not been translated yet. Undeniably, porting is not always easy but a large number of the problems in porting come from errors in the way the translation is done. They would be easily fixed by revising the porting process itself. This will frequently, but not always, require re – writing the editor. A few can be removed by hex – editing the existing editor. Errors that can’t be fixed will always occur in the same situations, so they are at least perfectly predictable. The scripts generated by the porting process always need to be revised; an example at random is the move_to_new_town call. In Avernum this can be called only one way, so you would need to find a place to put a new special node. Another example is type 63, the trap node; here you must create a terrain script with all the relevant details. The finishing touches for an entire scenario could take a few weeks easily. Translation of objects: terrain, monsters and items. This is done by a set of tables, it is a one on one process, and an Exile object is given a single Avernum translation. It is simplistic, based upon default objects when every big league Exile author used / uses custom objects. In actual practice the translations can be customized even without a new editor.** A quick bit of hex – editing of the translation arrays is all it takes. Said arrays can be found at the following locations in the official editor: short old_monst_to_new[256] = {…} is found at line 6,734 column 47 through line 6,741 column 67. short old_ter_to_floor[256] = {…} is found at line 6,741 column 69 through line 6,749 column 19. short old_ter_to_ter[256] = {…} is found at line 6,749 column 21 through line 6,756 column 41. short old_item_to_new_item[400] = {…} is found at line 6,756 column 43 through line 6,768 column 02. These arrays can also be found in source file Bl A Fileio.c, from lines 122 thru 275. *Fine print 1, I am assuming that there are no complications like monsters or doors outside of town boundaries. **Fine print 2, deciding how to translate the custom objects does take some doing. Even with all the relevant data copied into an Excel spreadsheet, it takes me a while to decide. My approach is to copy the data from the scenario exs file then compare it with the default BoE data.
  15. Importing Blades Of Exile Scenarios The way to increase the number of BoA scenarios is mass – production: importing Exile scenarios into Avernum. If you really want to be an author but have zero literary talent, then porting is the way to go. Ditto if you are an author and want to import one of your great Exile hits into the Avernum world. It is magical; choose the Import option and a few seconds later an entire scenario appears all at once! Admittedly there are still some bugs to be worked out, a 3D editor is needed that can be compiled on any common compiler. Before this can happen the porting process commands will need to be revised. Easily enough done by a three – way reference: BoE Editor Help, the Bl A Fileio.c source file and BoA Script Reference. (The Bl A Fileio.c file is the one that actually contains all the commands used in porting, it is found in the official editor’s source code. Its analog in the 3D editor is Bl A Fileio.cpp.) At the end of the day, BoE and BoA are very much different games, so the process will require a lot of manual effort, it can never be automated.
×
×
  • Create New...