Forum Replies Created
-
AuthorPosts
-
Niahak
ModeratorProbably from seeing all the paths I posted. MK uploads to my site, but a slightly different URL.
Niahak
ModeratorAlso, published release:
http://www.niahak.org/images/DOAE/DoaEdv098p.zip
Will update the original post as well.
Niahak
ModeratorHi MiDKnighT,
I've made a few changes, tested that they're working, and checked back in based on your previous changes. Here's a set of code review comments:
–Removed a couple event handlers that got created accidentally.
–Moved the enabling/disabling of the text boxes up to the "LoadRomData" method (line 392-395). This makes it so they're only enabled once (vs. once for each officer when loading) and consolidates the logic for this stuff. I also changed the default to "not enabled" to keep consistent with other behavior.
–Removed some other files mistakenly added (obj/*). You might want to put an exclusion in SVN for that stuff, since anything in the obj directory is compiled.
–Reduced the size of the text boxes for STR/INT/AGI etc. so there isn't overlap with their respective labels.
Everything else looks pretty good.
The reason that you can't get the "Tactics" stuff to be recognized is that all those Mainform.*.cs items are a "partial class". If you look at the topmost definition all of them say:
Code:public partial class Mainform
{If you change your topmost declaration to that, and make sure it has the declaration
Code:namespace DoaEditorat the top, it should work.
As far as the tacticList goes, you're on the right track. I would suggest adding a new method for loading in the names and calling it from LoadRomData in MainForm. Look at parseTextPointers in MainForm.Lines for a pretty decent example of it – of course, you'd just be loading in a single bank of data, but the concept in ParseLinesFromTextBank is a good starting point for what you need to do – might consider making a Tactic class to hold that data, that knows how to transmute itself back into bytes.
Let me know if you need any other assistance. This is really good stuff so far :)
June 19, 2013 at 10:12 pm in reply to: Destiny of an Editor (permanent beta test mode active) #27578Niahak
ModeratorYeah, you'll probably want to explore a bit with how officers are imported/exported.
One easy trick to see how things are related: look for the variable of an existing value (e.g. strText is the textbox input for strength) and see where it is modified by right-clicking then choosing Find All References.
You'll have to add LDR, VIT, POL to the officer object and figure out how to assign them and export them (ParseOfficer method and the ToBytes method on the Officer class respectively).
Unfortunately that early code is from when I didn't even use the visual editor, so the stuff you added will be different from the code that's already there.
Let me know if you have any specific questions.
June 13, 2013 at 11:29 pm in reply to: Destiny of an Editor (permanent beta test mode active) #27572Niahak
ModeratorMiDKnighT: Added an account for you. Sent you an email with the details. Any questions about the code, feel free to ask here. That way anyone who joins the project later will have the info.
June 10, 2013 at 10:26 pm in reply to: Destiny of an Editor (permanent beta test mode active) #27565Niahak
ModeratorLooks like officer 185 (Zhuge Liang)'s Portrait Background color is borked.
Acceptable values are 0xX0 to 0xX9, where X can be any value. 185's value is 0x0e.
The specific byte is at 0x33cdb.
Ma Chao's is too (0x33dc2).
It also seems to have a text overflow issue. Pointers to text in the bank starting at 0x2c010 (specifically 0x2c170 and afterward, and correspondingly at 0x2c370 and afterward) are lower than their predecessors in value (which is not allowed). To fix this, you can destroy all the values by setting them to F7F7F7… and B9B9B9… respectively.
After making these changes, I was able to import the ROM, but it has other serious issues. The patching progress apparently killed some officer names ("Z8??Qong", "Zh5ng Fei") and I'm guessing the text issue is indicative of another side effect. I wouldn't be surprised to hear if there were others if you played through all the way, that might not be merely issues in DoaEditor loading the ROM.
Niahak
ModeratorYeah, it's probably a mismatched variable.
Sorry for the delay, flight back from Japan got in late last night.
If you can find a way to get the ROM/IPS to me, I can take a look tonight.
May 30, 2013 at 11:23 pm in reply to: Destiny of an Emperor RH Guide ( MOVED! to http://doaerhguide.wikidot.com ) #40446Niahak
ModeratorIt looks like the issue is that the pointers (starting at #47, 0-indexed) in the new text bank start pointing to a much lower value than their predecessors.
At 0x3c040 and on (and correspondingly 0x3c240 and on) everything is zeroed out. DoaEditor thinks you have 240 pointers since that's what we defined for the 3rd text bank, but only 48 are actually present.
If you want to get it working no matter what, go into
DoaEd directorytablesAdditionalTextBanks.xml
Change
Code:<NumberOfPointers>240</NumberOfPointers>into
Code:<NumberOfPointers>48</NumberOfPointers>Long-term, I'd suggest fixing the IPS by defining 0x3c040-3c100 and 3c240-3c300 to 8A8A8A8A… and ABABAB… respectively.
I think we had this issue earlier, too.
Also, I'm flying to Japan tomorrow morning. Won't be able to help with further issues, but hopefully there won't be any :)
Niahak
ModeratorHey guys,
I was waiting for a game to download on Steam and think I finished the portrait selector. I was able to reuse large swaths of the region selector code, so it wasn't all that bad.
http://www.niahak.org/images/DOAE/DoaEdv098o.zip
DA: We're still working to define what the AI will be like for our game. Ideally I'd like to create a scripting language like the one you and Unfy seem to have, but I'm not sure how much work we're planning to put into the AI (it most likely will just be several different values for predefined heuristics/behaviors).
Truth be told, though, I'm not sure how much appeal Privateer would have without the plot, so I've been focusing on getting my writer working prototypes over AI design!
Niahak
ModeratorTime is sadly a bit low (and I'm traveling the next three weekends) and motivation is low too as I'm deep in another project but I might be able to take a peek tomorrow and see how bad it would be to have that portrait selector.
May 17, 2013 at 2:40 am in reply to: Destiny of an Emperor RH Guide ( MOVED! to http://doaerhguide.wikidot.com ) #40325Niahak
ModeratorQuote:That would be really cool if you would set up an SVN for me. No rush on it, but thank you very much for the offer! :PIt's set up. Sent you an email via the contact system on your site. Feel free to make any edits you like, as I'm not sure how often I can make updates to the tool now. Let me know of any questions you have.
May 16, 2013 at 1:46 am in reply to: Destiny of an Emperor RH Guide ( MOVED! to http://doaerhguide.wikidot.com ) #40313Niahak
ModeratorQuote:Do you know if this space is used Destiny of an Editor for Text editing?Straight from the DoaEditor code:
Code:private static class TextBank1Constants
{
public const int pointerStart = 0x28010;
public const int pointerBank2Start = 0x28210;
public const int textStartPoint = 0x283f8;
public const int textAdjustedStartPoint = 0x20010;
public const int BankLength = 487;
public const int BaseBankNumber = 0;
public const int EndPoint = 0x2bfdf;
}private static class TextBank2Constants
{
public const int AdjustedStartPoint = 0x24010;
public const int PointerStart = 0x2c010;
public const int PointerBank2Start = 0x2c210;
public const int StartPoint = 0x2c390;
public const int EndPoint = 0x2fa0f;
public const int BankLength = 384;
public const int BaseBankNumber = 3;
}private static class TextBank3Constants
{
public const int AdjustedStartPoint = 0x34010;
public const int PointerStart = 0x3c010;
public const int PointerBank2Start = 0x3c210;
public const int StartPoint = 0x3c390;
public const int EndPoint = 0x3EB9A;
public const int BankLength = 47;
public const int BaseBankNumber = 0xa;
}"PointerStart" and "Endpoint" are probably what you're looking for. DoaEditor does use that little section for Text Bank 2 since there isn't much other space to work with in that area.
I have SVN set up for DoaEditor and would be glad to make you an account in case you'd like to tinker with it.
Niahak
ModeratorIt's been awhile! How've you been?
Been working on making a game of my own.
Also, my biggest translation project got released, Suikogaiden vol. 1 :)
Finally, Monster Hunter 3 Ultimate. It's pretty good.
March 10, 2013 at 11:57 pm in reply to: What do you guys do when you are not on LordYuanShu.com? #45396Niahak
ModeratorI'm also a programmer, work-wise. I've done a few different things, but my most recent specialty is communication protocols (higher level stuff, mostly working above the driver level).
I play lots of games and used to write reviews and other commentary for a small website. Recently, I started working on my own small indie game, but I'm not sure I expect much to come of it yet.
I've also done some Japanese-to-English fan translation – I have a few games and a couple manga chapters to my credit.
Niahak
ModeratorLYS uses Gravatar:
-
AuthorPosts