Java
Some of my more fortunate programs can be found here. All applications are written in Java, my language of choice.
Most applications are available for download (with sources), there are also working applets.
- Turtle3D
- JEE Gallery
- The Game
- LSystems
- DrawingDrawing
- Watermarker
- Neural Compressor
- System Calculator
- Labyrinth Applet
Turtle3D
Java 3D application using formal grammars for generating 3D fractal objects. This project has it's own page.
JEE Gallery
Internet gallery that allows browsing pictures, movies and other file types organized into works and categories. Registered users can then rate and comment those works. Addition of new files can be done only by administrator through a web interface. File types are recognised automatically, basing on their extension (this affects how they are presented).
At first I did it alone, but later it was completly rewritten for a school project by me and two friends of mine (Bartosz Spyrko-Śmietanko and Michał Margiel). The goal of this project was to learn what all those magic JEE shortcuts mean, so we used us many technologies us we could. They're listed below:
- Apache MyFaces + Tomahawk
- Facelets
- Java Persistence 1.0
- JBoss EJB3
- JBoss JMS
- JBoss WS
- Java Mail
- JAAS
Servers used:
- JBoss AS
- MySQL
Software used in development:
- Eclipse + Exadel Studio
- Maven2
- SVN
JEE Gallery was created under the terms of the GNU General Public License as published by the Free Software Foundation (version 2).
You can find project's sources in the google code repository here.
The Game
A multiplayer RPG game, with simple but nice bitmap graphics, where players can walk around a map, pick up items, open doors, switch switches and fight with each other. Fights are solved with an unique RPG system of my design (SYSTEM®).
The Game has a client/server architecture, network communication is based on Java RMI. All items and creatures are defined in a text file and can be fed to the server even during play (changes take place instantly), so one of the players can choose a role of a Game Master and affect the ongoing game, by spawning monsters for example.
Level designer can implement conditions and triggers, that allow creating events and quite interesting relationships, but due to the long and tiresome process of map making there is only one level avaible (tutorial).
I wrote The Game together with Bartosz Spyrko-Śmietanko.
Game guide (polish version)LSystems
An application for creating Lindenmayer systems, with 2D turtle graphics.
Grammars and symbol interpretations (colorful polygons) are defined in a text file.
See some of my l-system fractalsDownload LSystems
DrawingDrawing
Internet communicator, where users draw instead of typing. Everybody draws on the same sheet of paper and sees other's doodles instantly.
Application has a client/server architecture, network communication is based on Java RMI. Vector image is stored on server, users can come and go anytime without loosing it. Picture can be also saved to hdd and used later.
You can choose color and width of lines you draw. It's really fun, but only when you got a tablet.
Download DrawingDrawingWatermarker
I wrote this program to prepare pictures before I put them in the gallery. It searches directory tree for images and applies watermarks adjusted to the image size - features I required but could not find anywhere.
List of features:
- Processes directory tree recursively and recreates the same structure on output
- Allows including and excluding files based on regular expressions
- Scales pictures down to fit a defined area
- Scales the watermark (defined as PNG with transparency) to fit the image size (smaller images will have a smaller watermark)
- The watermark is added in the corner of the image. It's not supposed to protect it by making it useless, but rather sign it in a non disturbing way
Checkout the sources
Neural Compressor
Application showing how different neural networks deal with image compression.
I used Joone (Java Object Oriented Neural Engine) for this project.
System Calculator
A tool written to test SYSTEM®, RPG system I was developing for many years. It's main goal was to be realistic, so wise choices in weaponry and armour would really pay off in the battle. System Calculator allows to simulate tens of thousands of fights in a few seconds, so best equipment can be chosen for every situation/environment and gameplay rules twicked to suit expectations.
Unfortunately, I have never finished it, mostly because of low public demand ;)
See it in actionLabyrinth applet
An applet demonstrating a find-a-way-in-a-labyrinth algorithm.
It's my first Java program ever, maybe with an exception of 'Hello World!'.
See it in action. If You want to make it work, You'll need a file with a labyrinth too.