Profile for Andrea


Recent posts

Pages

AuthorRecent posts
Geneforge 4 Operating System in Tech Support
Babelicious
Member # 39
Profile Homepage #5
Uh, the last "Win16" operating system was Windows 3.1. Windows 95 and its successors all are 32-bit operating systems using the Win32 API. Windows 95, 98, and ME still have DOS lurking under the covers (although less and less as time went on); Windows NT/2000/XP/etc. do not. That's the distinction.

GF4 probably requires at least Windows 2000 because (and this is a guess) it probably needs a version of DirectX not supported on previous iterations of the operating system. I understand it also stores game data in user profile directories rather than in its own directory, which suggests that it was developed for NT-series versions of Windows.

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
Pointers in Blades of Exile
Babelicious
Member # 39
Profile Homepage #5
Yeah, that saves a few node types, as well as uncountable nodes per chain. Good thinking.

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
Pointers in Blades of Exile
Babelicious
Member # 39
Profile Homepage #1
So will there be new nodes to populate this array, increment and decrement its values, etc? I mean, I like the idea, but how many nodes will it cost?

In addition, couldn't we find a way to allow the value of SDFs to be used instead? That seems potentially more powerful, and there are already nodes in place to manipulate those. At the very least, I'd want to be able to load the value of an SDF into a pointer slot, and vice versa.

At which point you'd really have more of a really large register system.

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
Compiling BoE source code for Windows in Blades of Exile
Babelicious
Member # 39
Profile Homepage #32
I believe I've tracked down the cause of the 100-town crashing bug in Windows BoE.

http://pygsys.com/wiki/oboe/?FrontPage

Could someone with a working build setup for WinBlades test the fix for me?

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
Open source project startup in Blades of Exile
Babelicious
Member # 39
Profile Homepage #32
That list of reserved rights is invalid and legally troublesome enough to render the code dangerous to use, even without the CPL. It's certainly incompatible with every known open source license, because it puts restrictions on the end user's right to license his or her own creations as he or she sees fit.

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
Compiling BoE source code for Windows in Blades of Exile
Babelicious
Member # 39
Profile Homepage #29
I really do advise avoiding SourceForge. It's slow, it's inferior, and their tech support is tremendously poor. If you need a ticket system, I'd be glad to set up Trac or something like it on my server. Just an offer.

Also, now that the Windows and Mac versions seem to be reasonably up to date, I'm going to be putting some hours in on merging both codebases.

[ Wednesday, June 06, 2007 09:28: Message edited by: Andrea ]

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
Request for Blades of Exile code to be released under a better open source license in Blades of Exile
Babelicious
Member # 39
Profile Homepage #1
I agree. The BoE license needs to be revised anyway, considering that (as pointed out in another thread) it technically doesn't apply to the BoE game itself.

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
Linux User in Blades of Exile
Babelicious
Member # 39
Profile Homepage #1
BoE runs extremely well under Wine, and should run even better once it's been updated a bit. As a longtime Linux user, I'm sympathetic, but honestly I don't see any major reason to do a direct Linux port in the near future. Wine is readily available.

However, I'll be running BoE under Wine directly as well as compiling it under Winelib for my own edification (mostly so that I can fix bugs). I'll be doing everything I can to make sure it runs consistently and cleanly.

The main thing to do is to copy MAIDWORD.TTF to a fonts directory. If you're using a recent Linux distribution with fontconfig/etc., you should be able to just kick it into ~/.fonts. That'll make sure the fonts on the opening screen look correct.

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
Scenario Editor Error in Blades of Exile
Babelicious
Member # 39
Profile Homepage #2
error = FSMakeFSSpec(start_volume,start_dir,"\p::::Blades of Exile Base",&temp_file_to_load);
if (error != 0) {oops_error(80);}
There's the code at issue, to save anyone the trouble of tracking it down. Line 1128 of tfileio.c.

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
Compiling BoE source code for Windows in Blades of Exile
Babelicious
Member # 39
Profile Homepage #24
Ornus: your Windows source refers to a 'look.cur' which I can't find anywhere. Other than that, it's compiling very smoothly with winelib. Do you know where that file may be?
.

[ Monday, June 04, 2007 11:27: Message edited by: Andrea ]

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
Petrification Touch in Blades of Exile
Babelicious
Member # 39
Profile Homepage #1
He didn't entirely forget it. You'll want to make sure to remove the existing conditional for it.

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
BoE Scenario Editor Error? in Tech Support
Babelicious
Member # 39
Profile Homepage #9
I'm currently working on parsing out the BoE scenario format. If you email me your scenario, I could see if it's salvageable and fix it if possible.

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
Post here if you still play BoE in Blades of Exile
Babelicious
Member # 39
Profile Homepage #22
quote:
Originally written by malkav11:

... most of them have never been mangled on the horrific Procrustean bed that is the Avernum engine ...
Fixed your typo.

In addition, I would still be playing BoE if it weren't for the fact that Wine doesn't seem to like Win16 anymore. Which is reasonable enough, but I won't be able to play it until someone brings it up to date. Apparently we're getting close to that, though, so woo.

[ Friday, June 01, 2007 14:10: Message edited by: Andrea ]

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
Compiling BoE source code for Windows in Blades of Exile
Babelicious
Member # 39
Profile Homepage #15
Ormus: What that looks like to me is that you're properly loading the scenario record and the text but not the town records, which are loaded separately.

You should try spitting out the starting co-ordinates when placing the party. where_start for ASR is (14, 56) -- which it obviously isn't for you -- and which_town_start is 1. That's what I'd check for.

UPDATE: Are you using the copy of ASR packaged with the source release? Because it appears that it's corrupt.

It and the packaged ZKR are garbled when I load them with my scenario dumper. Meanwhile, VoDT and all three of the Mac versions of the scenarios load fine, as well as a half dozen scenarios I just downloaded. Finally, I found some old copies of them lying around on my hard drive -- the Windows versions, natch -- and they worked.

So the copies of STEALTH.EXS and ZAKHAZI.EXS packaged with the Windows source release version 2 are corrupt. Don't use them for testing.

UPDATE 2: Running stock BoE in an old version of Wine, I tried to run the apparently corrupt STEALTH.EXS. I was partially able to duplicate your issue. It placed me 'correctly' -- that is, on the dock -- but moving in any direction resulted in a special-out-of-range error and I was teleported into the middle of nowhere. Hope that helps.

[ Friday, June 01, 2007 18:37: Message edited by: Andrea ]

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
Open Source BoE Projects Summary in Blades of Exile
Babelicious
Member # 39
Profile Homepage #3
Yeah, I'm going to work on separating out the gameplay code from both codebases. In terms of files, there's not a lot of cleanness:

[mboeh@deuce]projects/boe-win% ls -1 *.CPP | wc -l
24
[mboeh@deuce]projects/boe-win% grep HWND -l *.CPP | wc -l
19
That is, 19 out of 24 files -- at least -- have some reference to the Windows-specific HWND type. However, most of these are just one-off references, and it's generally a result of things like items.cpp containing both item-related gameplay functions and item-related UI functions. One of my goals is to separate that out.

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
Open source project startup in Blades of Exile
Babelicious
Member # 39
Profile Homepage #22
I don't think any of the several hacked editors are objectionable anymore. Their functionality can (and in some cases, should) be duplicated readily now that we have the source.

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
Blades of Exile Source Code Released in Blades of Exile
Babelicious
Member # 39
Profile Homepage #64
Yes, very. ctags is also invaluable.
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
Blades of Exile Source Code Released in Blades of Exile
Babelicious
Member # 39
Profile Homepage #61
Yeah, I can see there was a conscious effort in BoE to separate business logic from display logic. The main issue I'm running into, honestly, is a lack of named constants. Monster special skills, statuses, etc.

All told, though, the BoE code isn't too imposing to sort through. I just wish there were more, smaller, and more logically organized files.

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
Open Source BoE Projects Summary in Blades of Exile
Babelicious
Member # 39
Profile Homepage #1
I'm setting up a wiki to document my own diggings through the source. If anyone wants to get in on that, here it is:

http://pygsys.com/wiki/oboe/

I just put it up recently. It uses Hiki, which is Japanese, so there's a few scraps of Japanese around. I'm weeding them out.

If anyone else has a public repository for their work on Blades, you can email it to me and I'll integrate it into something like:

http://pygsys.com/darcs/web/

darcs, of course, is preferred since I can feed it directly into darcsweb.

EDIT: By the way, one thing I'm going to be doing along my merry travels through the source is checking up on which parts have system-dependent code. My early examinations tend to support my belief that most of the game's mechanics are completely free of direct references to Mac or Windows-specific code. As a result, it should be possible to merge the codebases in the near future, which I see as a prerequisite to substantial cleanup, bug-fixing, and the like.

[ Wednesday, May 30, 2007 12:09: Message edited by: Andrea ]

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
Open source project startup in Blades of Exile
Babelicious
Member # 39
Profile Homepage #19
But Gtk+ isn't particularly portable. It works for X Window and for Win32, and there's an incomplete port to Cocoa. And I mean incomplete -- believe me, I've bashed my head against every free GUI toolkit out there. The only ones that are consistently cross-platform and stable are Qt and WxWidgets -- which are both options. I prefer Gtk+ to both of these, but without a working and stable Mac OS X version, it's worthless for BoE.

In any case, I don't see the point of making a cross-platform version of a program that already works on Windows and OS X -- and runs perfectly in Wine. The Linux version of Exile 3 was ported with winelib, and I think that would be a pretty reasonable method to get a native version of BoE on Linux very quickly.

I'll respond to your other comments later. I have to get to work.

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
OBoE in Blades of Exile
Babelicious
Member # 39
Profile Homepage #19
quote:
Originally written by Dr. Johann Georg Faust:

Okay, I think I get it.

I also would guess that you spend more time pulling changes to keep your own repository in line with the rest, than pushing changes to the others.

Well, that depends on the development model.

quote:

And if an SVN repository exists at the same time, there would effectively be a gatekeeper (or several) who pull changes from the other developers, review them and commit them to the central codebase.

Yep. There are also tools like tailor, which convert repositories from one format to another, and numerous gateways providing SVN interfaces to things like darcs, arch, git, etc.

One specific example here is the Ruby programming language. For a while now, it's been in Subversion (and before, it was in CVS), but a number of developers use git to manage their local changes before making big commits. Including matz, the language's creator and lead developer.

quote:
What defines an "upstream" repository? Is it defined by the system or does the term apply to any repository that pulls the changes from many other developers and acts as a kind of "local central"?
You'll have to forgive me. I was lazily mis-using some programmer slang. What I was trying to communicate was that you might want to share changes with other developers without potentially messing up the version in the main repository. This is a common issue with Subversion. Branching helps, but it can become kind of a pain in the ass to maintain. Distributed systems allow you to go essentially branch-free by just sharing the patchsets you want with specific developers, while pushing relevant changes to a central repository -- or not. Which can also be a pain in the ass, but a different kind.

It's important to realize that the feature set of a distributed SCM is a strict superset of the feature set of a non-distributed SCM. Generally speaking, darcs/git/arch/monotone/mercurial/etc/etc can do everything that Subversion can do. The advantages for Subversion are mostly the same advantages that CVS had traditionally -- more mature, more universal, better support from third-party tools.

quote:
This sounds new and a bit weird and somehow not likely to work, but I probably thought the same when I first heard of Linux. :P
Linux is the example you want. It has been successfully developed for years using a distributed model that would have been difficult if not impossible with Subversion.

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
OBoE in Blades of Exile
Babelicious
Member # 39
Profile Homepage #17
So if I understand this darcs thing correctly, it's like CVS and SVN except that you aren't committing to a single repository but to several separate ones.

Not exactly. What it means is that every working copy is itself a repository and vice versa, and each repository can have its own history. Then, you can choose to package up a set of changes and send them to an upstream repository. Thus, you can commit changes without having to have commit rights to a central repository.

Do all changes need to be pushed to all the available repositories? Or what happens if there are more than, say, 2-3 repositories out there?

Well, Linux is a good example. It uses git, which is similar to darcs but on crack and without even a modicum of Windows support. Earlier, it used BitKeeper. What you have in Linux is a mainline repository, managed primarily by Linus Torvalds, but experimental work is done in other repositories. In essence, each working copy/repository can 'branch' without doing so explicitly, and then you can either 'push' changes (over email, HTTP, SSH, etc.) to a remote repository, or someone can 'pull' changes (usually over HTTP) from you.

If anyone can host their own repository - what's the difference between a checked-out working copy and a repository? Can a code base be both at once, or is there still a client-server structure in spite of the decentralization?

There is absolutely no difference. Any darcs working copy exposed over HTTP is automatically a read-only repository. That's how I'm pulling Khoth's changes and mirroring them.

Sorry if I'm asking dumb questions, but Wikipedia can only take you so far and I've never heard of darcs before...

Eh, it's not dumb. darcs in particular and distributed SCMs in general are pretty new. But the important thing is to realize that one can use darcs just like Subversion, if you like -- one person has a public repository crowned the "official" one, and everyone pushes and pulls changes from that. But an added benefit is that if you're making a lot of major changes, or if you have local changes you want to keep to yourself, you can still have a regular update-modify-update-commit cycle, without having to worry about making an explicit branch, polluting upstream, or even having commit access.

There are a lot of pretty good arguments for Subversion, and there are good arguments for the plethora of DSCMs available out there today. They both have distinct advantages. However, when it comes to a loosely-knit open source project like this, there's a definite advantage to distributed systems.

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
Open source project startup in Blades of Exile
Babelicious
Member # 39
Profile Homepage #5
Hey hey, whoa now. Put the whip down, man.

What we have here is a very fresh FS project with a very old code base. I think we all agree that the first order of business is to modernize BoE enough to run on modern systems, and the second is to fix the existing bugs, but beyond that you're unlikely to find any permanent consensus.

What this project doesn't need is a leader. Of any kind. We have a few people who are interested in working on parts of the released BoE source, and it'd be a good idea for us to collaborate to the best of our abilities. But our interests are indeed separate, and there simply isn't enough momentum to get funnelled into a formal project.

I'll say this right up front -- I'm interested in an open source BoE, both for what I plan to take from it as well as the application itself. I will be contributing both expertise and code, but I will never join any formal project such as you outline here. I think that level of formality would suffocate the enthusiasm that some of us have for this effort.

Here are my specific issues:

1. I have no idea who you are, and I'm certainly not interested in subjecting my work to your review.
2. For similar reasons, I am not interested in using Subversion. We need a bazaar system, to use the odious ESR's terminology, rather than a cathedral. I like SVN -- I use it daily at work -- but I think it's a bad fit for open BoE.
3. An advantage of distributed development is that we don't need to set up a roadmap or a set of goals. Everyone can work on what they like and the outcome will be the result of discussion and consensus.
4. SourceForge sucks. It's slow, it has far more features than necessary, it's difficult to get around, and their technical support is half-assed at best. In addition, they're pretty fascist about what you're allowed to put on webspace -- last time I checked, it's a violation of the TOS to upload darcs repositories into your webspace. I see no reason to get into SF's sticky embrace for a wadge of worthless and poorly-implemented features.

Don't consider this a flame. I'm being as measured as I can here, but I see no reason why a centralized development model is anything but bad for the future of Blades.

To end this on a positive note: I do agree with the goal of cleaning up and documenting the code. That's where my efforts will be focused at first.

[ Tuesday, May 29, 2007 14:47: Message edited by: Andrea ]

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
OBoE in Blades of Exile
Babelicious
Member # 39
Profile Homepage #13
Honestly, I think darcs is a better idea for a project like this without a natural or artificial hierarchy. A central repository leads to the issue of who's hosting it, who has access to it, etc.

If at some point in the future the project becomes stable enough that a centralized SCM makes sense, you can always use tailor to convert the darcs repo into a SVN repo.

There's a darcs plugin for Trac, which gets us a wiki, issue tracking, and the like. I could set that up if anyone likes.

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00
OBoE in Blades of Exile
Babelicious
Member # 39
Profile Homepage #8
Elfy: darcs is a distributed source-code management system, which means that there is no central repository to host it. However, Khoth has it at http://khoth.ath.cx/~khoth/BoE, and I have a mirror to take the strain off what I believe to be his home machine at http://pygsys.com/darcs/oboe-mac. I'm pulling from his repository every 3 hours, but I could pull more or less as Khoth desires.

Now, Khoth has just been doing the Mac port. If BoE is going to be genuinely adopted as an open source product, coordination is going to be vital between the Windows and Mac version. After the Mac version is in shape for modern machines, it'll be vital to examine the differences between the two so they can be kept as consistent as possible.

I have several motives here. One of these is that I love Blades of Exile and, until I finish Pygmalion, there's no real replacement for it for me including BoA. So I'd love to see a resurgent BoE. Second, I want a public BoE development effort so I'm not duplicating work.

In general, I'm offering any help or resources necessary -- web hosting, darcs/svn/etc, Trac or a similar bug-tracking system, etc. Or you can use something like DevjaVu or Savannah. I highly advise not using SourceForge under any circumstances.

FWIW, *i, the very very original name of the very first version of Pygmalion was oboe.

Also:

http://pygsys.com/darcs/web/

[ Monday, May 28, 2007 16:09: Message edited by: Andrea ]

--------------------
Pygmalion | Desperance | Djur
Posts: 1074 | Registered: Wednesday, October 3 2001 07:00

Pages