Jul 31
I am proud to announce the Potential RPG Alpha3 edition! The focus of Alpha editions is to introduce gameplay features, bringing us closer to a feature-complete Beta edition. Alpha releases are for approved playtesters only, but steady progress is being made toward a more open Beta edition.
Some of the outward improvements in this edition include:
- Walk-behind surface features
- Terrain edging
- Zoom in/out world view
- New Town & Shop design
- Enhanced Weaponsmithing
- New Skills system
- Sprite animation
- Resizable client
This edition theoretically fixes several bugs and performance issues, but Alpha playtesting is greatly needed (and appreciated). If you’re an Alpha playtester, have a look at the new gameplay (and have a look at the outstanding tasks).
Jul 18
This article covers a handy bit of logic to stabilize Java/Swing components that otherwise have annoying grow/shrink behavior. The (perceived) problem occurs when a Java/Swing application uses layout managers that obey internal components’ desired sizes. The layout shifts to accommodate internal components as they grow/shrink, which can cause much distress to the end user (at least it does to me). Read the rest of this entry »
Jul 15
There is now a mini-SLOC (Source Lines Of Code) graph in the sidebar. I generate this nightly from my software repository, using custom scripts and tools.
If there’s anything I like more than writing code, it’s simplifying code. At the leading edge of the SLOC graph, you’ll notice a massive drop from yesterday. Those 6,436 lines of code are attributable to Task#235 - Update towns to new designs.
The new design for towns and shops is much more traditional, in exactly the right kind of way. From a software and content development standpoint, it’s easier to work with and much more extensible. For Alpha testers, I’m gearing up for another update, which will feature a few of the latest design changes, including towns, shops, resources, and weaponsmithing.
Jul 09
Java interfaces are a wonderful thing; don’t get me wrong. However, many interface contracts make assumptions about how the implementation will behave. What is more, Java offers no way to programmatically enforce such an interface contract.
This article discusses a particular example of interface behavioral assumption and how to (partially) enforce the behavior programmatically. Read the rest of this entry »