Developer's Journal

Expanding the Sphere
08/31/04

I'm currently working on the next release of Herosphere, having put v1.2 to bed last month. The newest release, which we haven't given an official version number yet, will implement even more essential parts of the Hero System. The list includes:

Powers: Armor, Damage Reduction, Ego Blast, Forcefield, Mental Defense

Advantages: AoE: Radius, AoE: Hex, AoE: Line, Armor Piercing, Charges, Explosion, Penetrating, Ranged, Reduced Endurance

Limitations: Activation Roll, Charges, Costs/Increased Endurance, Range, Reduced Penetration, Requires Skill Roll

So far, I've already implemented Armor and Damage Reduction, so the latest release is well on its way. Stay tuned!

As always, I be emailed at ben@herosphere.com if you would like to learn more about Herosphere.

Ben Seeman
Jr. Programmer
Herosphere


Still Here!
06/13/04

Wow, has it actually been over 6 whole months since I last entered into this journal? The time has certainly flown by, but that doesn't mean that advances have not been made with Herosphere!

For the most part I have been cleaning up to code for version 1.2, incorporating suggestions from our Beta Testers and basically tightening the bolts on the program. I've just released Build 005 of the Beta Test and I'm confident that it is bug free. Within a few weeks I'll be ready to close out the Beta and fully release Herosphere v1.2, provided the Beta Testers don't find some more bugs within that time.

Also, during that time I'll be updated Herosphere.com with a revision of the online manual to reflect the changes in the current version as well as more in-depth tutorials for character data importing, creating character textures and map design.

As always, I be emailed at ben@herosphere.com if you would like to learn more about Herosphere.

Ben Seeman
Jr. Programmer
Herosphere


Forward... Test!
11/10/03

As of last week, the first build of the Herosphere 1.2 went out to the Beta Testers and I am eagerly awaiting their first reports. A part of me hopes that they will find nothing and that my code was air-tight solid. But the realistic side of me knows that there are going to be things that I missed or logic that I coded incorrectly.

Even though we're still in the testing phase of version 1.2, my mind has been on future releases of Herosphere. I've been thinking about what to do next, and I figured that I would ask the Herosphere community what they would like to see in future releases. More powers? Advantages and Limitations? Skills? Although I'm not ready to start taking suggestions yet, I will formally open discussions about versions beyond 1.2 once the new version is nearer release.

Perhaps the most exciting thing about the Herosphere project right now is the potential for expansion. With the amazing ground work that David Feldman did for the original release and the additional functionality that I added with v1.2, the possibilities for additional features are not only endless, but their implementation will be relatively easy. And I can't wait to start working on them!

By the way, we're still accepting applicants who want to be involved in the 1.2 Beta Test. So if you would like to get your hands on the latest version and help debug it, your help would still be appreciated. Email me at ben@herosphere.com or read the previous entry in this journal.

Ben Seeman
Jr. Programmer
Herosphere



Beta Time
10/19/03

Herosphere v1.2 Beta Test

After months of coding, weeks of debugging, a few sleepless nights and a few scares, the latest version of Herosphere is now ready to be tested! I am currently accepting applications for those people who are interested in testing the new version before it is released.

Qualifications: Applicants must have the following:

1 – A Herosphere CD key. If you have already purchased Herosphere, then you're all set. If you have not purchased Herosphere and want to test the new version, you MUST purchase Herosphere to do so.

2 – Hero Designer. Because version 1.2 uses Hero Designer for character creation, testers will need to have access to the character creation software.

3 – Excellent observation and communication skills. Testers need to be able to identify problems and communicate them CLEARLY to the head of Quality Assurance.

4 – A real desire to help. Applicants should interested in testing for the purpose of improving the product instead of just wanting to play with a new toy. Those interested should email me at benseeman@earthlink.net with the following information:

- Full Name
- Address
- Phone Number
- Email Address
- Herosphere CD Key #
- Hero Designer version #
- Systems specifications*
- Related experience in playtesting, beta testing, debugging, problem solving, etc.


* Testing can only be performed by PC users at this time. Please, DO NOT email me at my normal herogames.com email address. Any emails that I do receive will be immediately deleted. I am making it a point to not let the work I do on Herosphere interfere with my regular office duties. So please, use the address above to communicate with me regarding Herosphere playtesting.

Once I receive your email I will get in contact with you. Once all Beta Test members have been selected we will be able to move forward with the actual testing cycle. I'm really excited about this and I hope that you fans are as well.


Ben Seeman
Jr. Programmer
Herosphere


8/11/03


What a mind-boggling couple of months it has been!

I have to admit, when Dave Feldman first threw the Herosphere code my way I was completely overwhelmed. The amount of work that he had done for the first release was simply amazing.

I started first on the Hero Designer character importer since HD is what we're going to be using for character creation. Since Dan Simon has already created an exhaustive chargen, spending time on creating anther one for Herosphere just didn't make sense. All the information needed is there in those .hdc files that Hero Designer creates, so I set out to mine those files for all of the information needed for the Herosphere Combat Module.

The import procedure require that I become familiar with the Herosphere character data structure, and during the process of writing the code, I made a lot of changes to that structure; specifically, the Powers construct needed to be reworked in order to accommodate all of the new information coming in from Hero Designer. In turn, this required modifications to the way the Combat Module accessed information from the characters powers.

Characteristics were simple to import, since they were basically moving the values from the HD file to the HS data construct. I was also able to import Martial Arts and CSLs with relative ease.

The powers that I imported first were the ones that were already present in the initial release of Herosphere. Energy Blasts, Killing Attacks (both Ranged and Hand-to-Hand) and Damage Resistance were the first to be implemented, and the changes required to the Combat Module were easy to do, since the code was already there. I just had to tweak it.

Then I began to work on Adjustment powers. Why I did this, I can't quite remember, but I'm glad I did because it opened up a can of worms that needed opening. So I started with Drain. Importing the data and building the power construct in HS was not very difficult, and actually implementing Characteristic Drains went rather smoothly. But, when I started working on Power Adjustments, that's where I hit my first imposing obstacle.

The first version of the importer did not import any Modifiers. Since none of the current HS code used any of them, I didn't bother to import them. But Adjustment powers like Drain and Aid work against the Active Points of powers, and without that information available, those powers would only work against the base cost of the power. And that's, well, wrong.

So back to the importer I went. It took about a week, but I managed to import and store in the power constructs all of the "generic" Advantages available in the Hero System, as well as Adders and Advantages specific to the set of powers that were already in the import. With that information I could calculate the Active Cost of any of those powers, and therefore apply Adjustments to them.

For the last few weeks I've been at war with the Herosphere code, trying to wrap my head around the logic. I am happy to say that as of this point, a majority of Adjustment powers are functioning.

So, here is a list of what I've added to Herosphere since I began development on it.

• A Hero Designer character file importer. It is far from exhaustive, but will continue to grow as I add new Powers. It currently imports Energy Blast, Killing Attack – Ranged, Killing Attack – Hand to Hand, Damage Resistance, Aid, Drain, Transfer, and Healing.
• All of the powers that have been imported are either fully implemented or implemented to some extent. EB, KAs and Damage Resistance are fully implemented. Drain, Aid, Transfer and Healing are close to being fully implemented; the only thing not yet coded is self-targeting (which is important for Aid and Healing) and the consideration for adjusting a target that has more than one type of the same power being adjusted (but that should be done relatively soon once I master the Herosphere interface).

Obviously, there are a ton of considerations to keep in mind for Adjustment powers; when to apply Power Defense or whether you're "attacking" an ally or an enemy and other such issues. One by one I keep knocking them down, and sometimes knocking one down reveals two or three more. It's a process that I'm learning is inevitable when attempting to code the Hero System.

During this week leading up to my wedding, I'm hoping to complete the implementation of all of the adjustment powers, including Suppress and Absorption. I can't promise anything given the frantic week I'm expecting, but I do will my best to keep pounding the keys.

So basically, the long and short of it is, Adjustment powers are very close to being available in Herosphere. I am sure there are going to be bugs to hunt down and considerations that I haven't thought of that will come up during testing… but I've learned that's the nature of the beast.

Speaking of which, the code is calling me. I'm really enjoying working on Herosphere and I hope you enjoy playing it just as much once the new version is released.

Ben Seeman
Lieutenant Programmer