 |
Castle Paradox
|
View previous topic :: View next topic |
Author |
Message |
Bob the Hamster OHRRPGCE Developer

Joined: 22 Feb 2003 Posts: 2526 Location: Hamster Republic (Southern California Enclave)
|
Posted: Thu Feb 24, 2005 8:15 pm Post subject: QB45 legality, Battle Removal, GPL clarification, etc... |
|
|
jabbercat wrote: | And the best news is: QB is abandonware and therefore legal to download (I think)! :P |
Technically not legal, but apparently Microsoft has been ignoring all questions from the QB programming community as to whether or not it is okay to download. My guess is that Microsoft does not want to abandon their copyright, but they don't really want to stop people from downloading it, so they are keeping their mouths shut and taking a "don't ask don't tell" attitude to QB45 piracy.
Rinku wrote: | tmc and i had an idea for a battle-free version of the ohrrpgce.... |
That is an excellent idea.
Rinku wrote: |
another suggestion which i want someone to implement (or i will if no one else does) is to increase the script buffer in some way. ziggurats for red turtle is fairly limited because of this buffer.
|
The easiest way to signifigantly increase the script buffer is to reduce the maximum map size.
But naturally that would be unacceptable to most people.
I was discussing heap size vs. script buffer size with TMC, and if I can get some real-world statistics on maximum heap usage, we could move some of the heap memory to the script buffer just by changing two or three lines.
Rinku wrote: |
i have some questions about the ohr being gpl now, though. does this mean that we cannot sell ohrrpgce games?...
|
Glad you brought this up. I had forgotten that issue, But as NeoTA pointed out, a link to http://HamsterRepublic.com/ohrrpgce/source.php is adequate for a standard GAME.EXE, and if you are using a modified or forked GAME.EXE you only need to add a link to wherever you published your own modifications to the source code.
It is still totally acceptable to sell your game. I'll update the FAQ to clarify this.
Rinku wrote: |
...officially the gpl corporation (the free software foundation or whatever its name is) now owns the ohrrpgce (it owns any software under the
|
Absolutely not true. The OHRRPGCE still belongs to me, ThorBrian, (and anyone who contributes code still owns the code they contribute)
You may have been confused by the free software foundation's copyright notice on the license itself. That only applies to the text of the license, not to the source code covered by the license.
The Mad Cacti wrote: | Too bad, it looks like the foemap isn't even stored in memory. It's.. a bit hard to tell. I wish there was a roadmap :P
|
the foemap used to me in memory just like the tilemap and passmap, but adding various features over time pushed the memory usage up, and I had to save memory by making the foemap read from an open file descriptor.
And for the moment anyway, http://HamsterRepublic.com/ohrrpgce/buglist.php is the closest thing I have to a roadmap/
The Mad Cacti wrote: |
Removing battles would probably end up being a huge amount of work - I can see it coming. But, strangely, I've had this idea for 2 years or so.
|
Maybe not as bad as you might think. Although completely removing BMOD.BAS and BMODSUBS.BAS would be a big pain, it would probably be fairly easy to make a version that replaced the "battle" sub with an empty stub function that does nothing, and to change the place where the battle sub. (at least I think there is only one place where it gets called.)
The Mad Cacti wrote: | I assume that compiling with QB 7.0 doesn't work. |
I tried once, and no it does not. Maybe somebody willing to try harder could figure out why.
NeoTA wrote: |
I've sent james a program i wrote to auto-indent the files -- if he decides to use it, things should become significantly more readable. if you have python, you can use it: i uploaded it to:
http://neota.castleparadox.com/basclean.py
|
I like the cleanup script idea. I'll be trying it out soon.
NeoTA wrote: | In summary: believe exactly the opposite of what rinku is saying: he is lying here with terrible consistency, more than i could imagine to be mere ignorance. |
Relax.
Stating a misunderstanding is not the same thing as lying. :) |
|
Back to top |
|
 |
Ysoft_Entertainment VB Programmer

Joined: 23 Sep 2003 Posts: 810 Location: Wherever There is a good game.
|
Posted: Fri Feb 25, 2005 7:42 am Post subject: |
|
|
yey, the best news I have heard in years.
perchaps I can convert the code to windows environment, or do some bugfixes. now if people decide to modify the password routines, than the ohrgfx will not work. I lost the source code to the new version of ohrgfx and only have the source for the pre-importer version.
I will take a look into changing that walking code in battles(the on that has only one frame displayed when walking toward enemy instead of 2 frames.
well, I assume it would be good to open a thread that coders can post to stating their modifications and bugfixes, that way, the whole thing is going to be well organized. _________________ Try my OHR exporter/importer.
OHRGFX
Striving to become better pixel artist then Fenrir Lunaris. Unfortunately the laziness gets in the way of my goals. |
|
Back to top |
|
 |
Rinku

Joined: 02 Feb 2003 Posts: 690
|
Posted: Fri Feb 25, 2005 10:07 am Post subject: |
|
|
thanks for the clarifications.
the information that the free software foundation owns any software published under the gpl was given to me by fyrewulff, so it may not be the most reliable info. i'll bring it up to him next time i talk to him.
zfrt uses very small maps (the largest is something like 20x100 tiles), so perhaps i could reduce the map size to increase the script buffer size. where in the code would i find that, and how complex would doing this be? i'd need to find and download quickbasic, find where total map size is stored and change it to something like 2048 tiles instead of 32767, and find where script buffer is stored and change it from whatever it is to 32767? _________________ Tower Defense Game |
|
Back to top |
|
 |
jabbercat Composer

Joined: 04 Sep 2003 Posts: 823 Location: Oxford
|
Posted: Fri Feb 25, 2005 11:09 am Post subject: |
|
|
cough |
|
Back to top |
|
 |
Ysoft_Entertainment VB Programmer

Joined: 23 Sep 2003 Posts: 810 Location: Wherever There is a good game.
|
Posted: Fri Feb 25, 2005 11:51 am Post subject: |
|
|
Why touching maps? we could easily live with 2500 enemy graphics, right? we can take memory from enemy graphics, and add them to the script buffer. I don't think anyone is going to use up all of the enemy graphics there are.
so lets do that ey? _________________ Try my OHR exporter/importer.
OHRGFX
Striving to become better pixel artist then Fenrir Lunaris. Unfortunately the laziness gets in the way of my goals. |
|
Back to top |
|
 |
Bob the Hamster OHRRPGCE Developer

Joined: 22 Feb 2003 Posts: 2526 Location: Hamster Republic (Southern California Enclave)
|
Posted: Fri Feb 25, 2005 1:14 pm Post subject: FSF and Memory allocation and such |
|
|
Rinku wrote: | thanks for the clarifications.
the information that the free software foundation owns any software published under the gpl was given to me by fyrewulff, so it may not be the most reliable info. i'll bring it up to him next time i talk to him.
|
He may have read something about "Copyright Assignments" to the FSF. There is an article on the FSF's GLP FAQ, where Eben Moglen (their lawyer) suggest assigning copyrights to the FSF because it makes it easier to enforce the GPL. It is like sub-contracting the right to enforce the GPL on your behalf to the FSF. For a big important complex project like the Linux kernel, where there is a big risk of corporations violating the license, this is actually a pretty good idea, but the GPL licence does not require it (doesn't even mention the idea) but for the OHRRPGCE, it would be silly-- such lawyer-tricks seem frivolous to me :) I do not expect anybody to assign copyright to the FSF, nor to me, nor to the Hamster Republic, nor anywhere else. By submitting patches to me you imply your permission to GPL license them, but you still keep copyright ownership.
Rinku wrote: |
zfrt uses very small maps (the largest is something like 20x100 tiles), so perhaps i could reduce the map size to increase the script buffer size. where in the code would i find that, and how complex would doing this be? i'd need to find and download quickbasic, find where total map size is stored and change it to something like 2048 tiles instead of 32767, and find where script buffer is stored and change it from whatever it is to 32767? |
You know, I was thinking about this. There might be a way to get this benefit without the need of a specialized build of GAME.EXE
I already have code that destroys and re-allocates the map buffers before a battle, and re-creates them afterwards.
I change the code to allocate the map buffers to only be as big as they need to be. Then I would resize the script buffer to take up the space not used by the map buffers.
When you move from one map to the next, I can re-allocate the map buffers and re-size the script buffer. re-sizing an array in quickbasic is not painless, but it is doable. Certainly not any harder than making a special small-map-big-script version of GAME.EXE
That way, if you are on a small map, you have more script buffer space available.
That means if you load a gigantic script on a small map and then move to a giant map, you will get a delayed script buffer overflow, but that iss certainly no worse than the current system of *always* getting a buffer overflow on a gigantic script.
Ysoft_Entertainment wrote: | Why touching maps? we could easily live with 2500 enemy graphics, right? we can take memory from enemy graphics, and add them to the script buffer. I don't think anyone is going to use up all of the enemy graphics there are.
so lets do that ey? |
Nah. Since there are never more than 8 enemies loaded at a time, they don't take much memory at all. Reducing the maximum number of enemies from 32767 to 2500 would not save anything. |
|
Back to top |
|
 |
RPGCreations E Pluribus Unum

Joined: 18 May 2003 Posts: 345
|
Posted: Fri Feb 25, 2005 1:49 pm Post subject: |
|
|
I linked Rinku directly to the GPL information when discussing it. The deal is I don't like the FSF or the GPL, but I do like the idea of open source. I believe it's better if people give back code voluntarily instead of being forced to. (Which is why I like writing my own licenses to be tailored to what I want, ie the RPL and the RNPL)
Anyway, I'd probably made a code edit if I could get QB4.5 legally. Actually, I think the old computer shop down the street still has some copies of it, or we might have a copy here at the libary.
What somebody needs to do is add an option to make the main menu (ie, quit, bam volume) completely invisible or completely solid, or even an option to not show the BAM volume (it doesn't effect the music when you are using VDMS) _________________
 |
|
Back to top |
|
 |
NeoTA Idiomatic Nomenclature

Joined: 15 Mar 2004 Posts: 165
|
Posted: Fri Feb 25, 2005 3:44 pm Post subject: |
|
|
Fyre: either you have misunderstood the GPL or i have misunderstood you. the GPL does not require you to give back any modifications.. unless you want to release the modified software.
But i understand your point.
People shouldn't be obliged to take the best option*,
they should choose it because they understand it is the best option.
*which OSS ubiquitously is.
I also see no conflict there -- GPL licensing is voluntary, you only have to gpl-license your software if it derives from a GPL-licensed software. i. e. If you don't like GPL, then changing a GPLed software and complaining about having to license the modifications under GPL is like.. jumping into ice cold water then complaining 'this is cold!'. |
|
Back to top |
|
 |
RPGCreations E Pluribus Unum

Joined: 18 May 2003 Posts: 345
|
Posted: Fri Feb 25, 2005 3:58 pm Post subject: |
|
|
I think you misunderstood me. I am aware that you don't have to give them back unless you release the software. Although you could technically obfuscate the availability of your modifications that they would be for all intents and purposes un-attainable, it wouldn't be worth the effort.
Not to say I won't use or work on GPL projects - I use phpBB and OpenOffice, and I've submitted code to Firefox - but if I had an alternative, I would take it.
It's Jame's code so he can license it under whatever he wants. _________________
 |
|
Back to top |
|
 |
NeoTA Idiomatic Nomenclature

Joined: 15 Mar 2004 Posts: 165
|
Posted: Fri Feb 25, 2005 4:10 pm Post subject: |
|
|
Can VDMS be autodetected? That would be an improvement on having an option.
James, what is this 'pushw' stuff? i know it's stack related -- is there some function call occurring i'm not seeing somewhere in those functions that use pushw a lot?
Or is it just a hack to return a great many values?
(for others -- there is code doing this in bmodsubs.bas, particularly AI.) |
|
Back to top |
|
 |
RPGCreations E Pluribus Unum

Joined: 18 May 2003 Posts: 345
|
Posted: Fri Feb 25, 2005 5:22 pm Post subject: |
|
|
I don't believe VDMS can be detected, since it is emulating a sound card afterall. Unless you do some form of hardware probing to look for any quirks in VDMS's emulation.
What I've just done with Jade and it's launcher is to run a check for VDMS and run game.exe accordingly. _________________
 |
|
Back to top |
|
 |
NeoTA Idiomatic Nomenclature

Joined: 15 Mar 2004 Posts: 165
|
Posted: Fri Feb 25, 2005 6:24 pm Post subject: |
|
|
haha, of course! ironically, you just told me how VDMS could be autodetected!
-- Search the PATH for dosdrv.exe.
VDMSound currently has no homepage(?)
there is only this:
http://sourceforge.net/projects/vdmsound/ |
|
Back to top |
|
 |
Bob the Hamster OHRRPGCE Developer

Joined: 22 Feb 2003 Posts: 2526 Location: Hamster Republic (Southern California Enclave)
|
Posted: Fri Feb 25, 2005 6:57 pm Post subject: |
|
|
NeoTA wrote: | James, what is this 'pushw' stuff? i know it's stack related -- is there some function call occurring i'm not seeing somewhere in those functions that use pushw a lot?
Or is it just a hack to return a great many values?
|
Ah, good question.
The pushw and popw code is an Assembly-implemented stack that Brian wrote for me to use with the plotscripting engine. It is pretty cool, because it avoids memory limitations by automaticly paging itself to disk when the stack buffer overflows.
The AI code in the battle system used to construct this big clunky attack animation buffer of bytecode that would then be interpreted to produce the attack animations. At some point I realized that I could totally eliminate the attack animation buffer by pushing the attack animation bytecode onto the plotscripting stack instead. Since no plotscript code runs during battle, this is no problem, and saves some memory.
The attack animation code has a LOT of room for improvement. All those crazy numbers need to be replaced with constants that give a clue what they mean, and then it will be MUCH easier to fix attack animation bugs, and even to implement new attack animations.
Also, I think that the addition of a few smarter attack bytecode commands could make it practical to:
(A) Write simpler, cleaner, more maintainable attack animations
(B) Possibly even read entire attack animations from stored lumps, rather than generating them on the fly... this would not be as cool as full battlescripting support, but it would still be pretty darn awesome.
[Edit: the above idea would definitely be post-quaternion work] |
|
Back to top |
|
 |
Ysoft_Entertainment VB Programmer

Joined: 23 Sep 2003 Posts: 810 Location: Wherever There is a good game.
|
Posted: Fri Feb 25, 2005 7:54 pm Post subject: |
|
|
while looking at the code I realized 2 things.
1) Jame's programming style is almost like mine, maybe a little bit better(he indents, I don't)
2) I have no idea what part of the code I should tackle, unless someone produces a documentation as to what each of the sub does.
so guys, don't expect anything good from me, I will probably spend all of my time checking each sub and familiarizing myself with it.
also where would I get upx? _________________ Try my OHR exporter/importer.
OHRGFX
Striving to become better pixel artist then Fenrir Lunaris. Unfortunately the laziness gets in the way of my goals. |
|
Back to top |
|
 |
NeoTA Idiomatic Nomenclature

Joined: 15 Mar 2004 Posts: 165
|
Posted: Fri Feb 25, 2005 7:56 pm Post subject: |
|
|
ok, with a little looking around, i can see the 'documentation' starting at (bmod.bas:964)
So i will sort out those and send you the constants definitions.
possibly some patches to make the code use it too (if i can figure out which are parameters and which are commands.)
Edit:
UPX :
EDIT2: no, it's this url! as james says. second time i made that mistake!
http://upx.sf.net
I'm also compiling a code map as i go, showing where to look for which functionality.
Last edited by NeoTA on Fri Feb 25, 2005 9:56 pm; edited 1 time in total |
|
Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|