When linking to these pages, please use the URL:
www.iki.fi/sol/ - it's permanent.
You've heard the story before, in one form or other.
User downloads software. Finds bugs in it. Mails the author. Author says, "you've got the sources, fix it".
That's where the story usually ends. In this case, however, he did. Presenting, GalaXQL 2.1, by david_costanzo. If some mac developer would like to compile a new osx binary of it, that'd be swell - it shouldn't be a huge task, but with Apple, you never know.
I played through Divinity 2. It was a strange experience in that I felt bad about playing it.. like reading a very bad book but not being able to put it down.
I can't even point at what was so bad about it. Of course there were some obvious things, like having a character who can do billion points of damage with one spectacular hit after another, as well as having godlike lock picking skill, and still not being able to unlock wooden chests unless a specific key is found..
You can polymorph in the game, and the non-human form is supposed to be more powerful than the human form. Turns out, once you level enough, the human form is nearly immortal while the other form, even when skills are maxed out and the best equipment is used, pretty weak.
So naturally the game's last mission is in this other form, and it's an escort mission. Pretty much the ONLY escort mission in the whole game. The game auto-saves every now and then, but apparently if you let your escortee to get more than 10% damage before the last 30 seconds or so, you're screwed, since the last bit causes around 80% damage.
I ended up hitting the game with cheat engine until the escortee was invulnerable. Horribly frustrating.
When I got near the end of the game, I decided that I seriously would need to pick up some programming project again and do some coding. Conveniently, Ludum Dare #26 rolled along, so I made a game which is a training program for the keypad. My cps as reported by it is around 4.0; feel free to beat my score..
The game was written in C/C++ and SDL and HTML-ized using Emscripten and you can also read my tutorial about using Emscripten in Windows. Yes, the tutorial is a bit unfinished, but then again, so's Emscripten. I've found that way more people have played my game in this LD (regardless of the record turnout again) than before, just because it's easier to play in a browser than standalone executable..
Another thing I picked up after way too long pause was Atanua. The version that'll be public in a few days unless I managed to break something will primarily include bug fixes and dramatic speedup of loading boxed designs (one design sped up from over 2 minutes to under one second).
Speaking of Atanua, one nutcase did go and made a game with it in Ludum Dare. 5865 chips, 9492 wires. Insanity.
I churned through 75 project Euler problems. Maybe I can stop now. After the first 50 or so the puzzles become more about math than programming, really. Getting to 50 also pretty much requires you to install a bignum library.
If for some reason you haven't checked out Strip Search, the penny arcade / loadingreadyrun web reality show for web comic artists, well.. maybe you should check it out.
I also have one "getting old games to run better on new hardware" project going, but it's too early to talk about it yet.. And no, I haven't made any progress on Spelurky since the last blog post. It's as if posting about projects on this blog causes them to stall.. =)
Speaking of projects.. long ago, when I was still working on CFL3 (yes yes, CFL5 is another project on the shelf..) which is a "virtual file system" of sorts, like DOOM WAD files of someone still remembers those, I designed the system in layers so that you can run data through a filter before it goes to the compressor. One of the filters was delta encoding, and that actually does help compress various forms of data (like raw wave audio). Back then I pondered about another kind of filter, basically bit transpose.
So you take 32 32bit words as a 32x32 bit matrix and rotate the bits by 90 degrees. This should, in theory, generate plenty of 0x00 and 0xff bytes for pretty much any kind of data, which, again, should compress better.
I finally got around to testing it after a discussion on Pouet, and ran test against the Canterbury corpus, combined with the Lena image as 32bit TGA, PNG and PSD, some floating point vector data, x86 executable and a MP3 file. As a result, pretty much everything compressed way worse than without the transform (including the various ASCII files in the corpus). The only file that compressed clearly better (the uncompressed 32bit TGA) didn't do so by much, and the best transform for it wasn't 32bit, but 8.
The first issue of Skrolli, a Finnish computer mag by hobbyists for hobbyists was published, and sold out. I'm still considering writing an article for it, but that takes quite bit of research, so we'll see..
Lots of things have happened, but I haven't bothered to write an update..
Primarily, I suppose, I've been working on a roguelike:
More on this and lots of other things when I find the inspiration to write about it.. =)
It's been a while, so here's recent search terms:
8051 is a?
Number. It's not a prime, since 83*97=8051.
another way to say interpolate
You could try sticking your tongue to the roof of your mouth and get something like "intelpoleit".
applications of immediate mode addressing
Depending on the architecture, there may be some known addresses; for instance, in DOS you could get the current time tick by reading from a certain address. Other known addresses might be ram-mapped I/O ports, for instance. And when programming for microcontrollers, just about everything is a known address.
bachelor thesis layout
Varies from school to school. Sometimes even within the school.
black and white curves
Curves drawn with just black and white, or curves depicting black and white?
cheat for atanua
free typing both name and cast a love spell on internet
I don't even.
how directdraw works
I'd hazard a guess that it performs some simple calculations itself, but mostly delegates work to graphics drivers through some well-defined interface.
print a diamond of starks in dev c++
I don't know what a 'stark' is. And I probably don't want to.
rifle case that connects to my backpack
what's immediate mode
Opposed to deferred or retained mode, immediate mode performs actions more or less immediately. Compare drawing a triangle now to adding a triangle to a list to be processed later.
why do we have to obey all the design rules
For the users to have a coherent experience across applications, without having to learn to use every single one all over again.
why smooth step have sine
Because sine is smooooooooooooooooth.
why we use interpolation
It's an optimization.
It's reassuring to know that, apparently, I'm the best in the world in something, even if it's practically inapplicable to anything useful.
There's a capture on youtube, as you can assume these days..
..although, again, you can download the binaries and watch it "for reals", if you want to. Here's the Pouet thread.
Like with the tAAt new year's demo, I've wrote a breakdown of the demo too. Warning: contains spoilers.
Oh boy. This is the worst flu I've ever had - or a chain of different flu-like symptoms, in any case. No flu can last for four weeks, can they?
I've been pondering on the OpenGL tutorials, and it's a tricky thing. The problem lies with the fact that OpenGL 3+ is very front-heavy; you need to know tons of stuff before you get to the good bits.
It's also a question of balance. On one end you have code with tons of OpenGL calls, and on the other end you say, here's an engine, just use it. I think I will have to write some kind of toolkit to jump over a lot of the complexity and to get the reader faster to the good bits, and then we can go back and see what the toolkit contains.
Still, it's a lot of work before I can even get started with the writing. There's a lot of cool stuff I'd love to write about, but you've got to start with the basics, and when it comes to OpenGL 3+, that's quite a lot.
Of course, I could just skip the basics, write a toolkit and hop directly to the good bits.
ps. I finally got around to writing in-page links to these news. The link is in the "#" after the date. Not quite a permalink, but close.
Year rolled over, with no end of the world to speak of, although last year had plenty of .. history in it. Things are bound to get more interesting this year, for better or worse.
As I'm writing this, I'm suffering from the annual new year's flu (4th year in a row). This has been the worst flu I can remember, with the whole family (and everybody we've been in contact with during Christmas) being horribly ill for over a week.
Let's start with a shocking reveal that I've been behind the tAAt new year demos for a while, including the latest one which you can watch on YouTube:
..although you can download the binaries and watch it the old school way too, if you want to. Check the Pouet thread for download links etc.
And as a bonus, I've written a breakdown of the demo too.
Which, in a roundabout way, brings us to (one of) the reason(s) of writing this blog post at this time.
Last year, I wrote that I don't, in general, do new year's resolutions, but I'd give them a go. I tried to do a little bit of the following every day:
As results go, the physical exercise was a dismal failure, if you don't count the 1-2 walkies with dogs each day, bicycling, carrying groceries with a backpack (no car here), managing a 3-year old boy, moving snow, taking said 3-year old to daycare on a bicycle (or a sledge, or carrying in some cases), making firewood and so on - you know, the normal every day stuff. I probably should try to do better this year.
The primary problem with this is to find a time slot for it. Maybe I will find one. I'd like to get back to the shape where I could do a hundred push-ups (which I managed due to the Ludum Dare dare some years back).
When it comes to music, I haven't really been able to play around every day, but I tried to find time, and I'm definitely better at it than I was a year ago. I also spent over 600 Eur on music-related things, including Native Instruments Komplete (for which I should have waited for a couple of weeks so I would have been able to use one of their frequent discounts), as well as Reaper and Renoise, both of which have their uses.
I probably should get my hands on some kind of dedicated audio interface, as using windows' audio has quite a bit of latency, and while using ASIO4All solves that, it also means that I can't get sound from other applications, which may be rather critical. For a lot of playing, the latency doesn't actually matter THAT much, but for drums it's a killer.
I also learned that there's a lot of stuff to learn when it comes to music.
I don't have all that much to show for, but you can check some oggs under the audio tab of this website. I'll probably post new ones there sometime.
The third point, some form of writing, is trickier to judge, as writing is large part of what I do every day; but I can't honestly say I've succeeded in it. I should be able to do some kind of creative writing project. Maybe a new tutorial series? (the Argon-Selenium OpenGL tutorials maybe - my project name for a modern counterpart of the Neon-Helium tutorials). Google plus and twitter have also taken their toll of my writing budget, as it's so much easier to just hammer something away on a social network and get over it. Instant gratification and all that.
Looking back, I have plenty of unfinished projects; the speech synth, an audio library, evolution shooter, etc. Apparently I didn't even manage to do a single Ludum Dare entry last year either.
One thing I did do, however, is a TMDC entry. I've heard that the quality of the entries was very high this year, so I'm hoping I don't finish last =)
And now, since this has been long overdue, recent search terms:
"all of the following interpolation techniques are based on weighted averages, except one. which one?"
It never quite ceases to amaze me how many people seem to be delegating their homework questions...
"write a program that displays a checker-board in which each white and black cell is a jbuttonwith a background black or white,"
...to Google. How these ended up on my site is another mystery.
alesis q49 + virtualbox
Never tried. I suppose it should work like any other USB device though?
answers to galaxql 2.0
Yeah yeah. At this point I fear it would probably be a re-designed GalaXQL 3.0 as during the project I figured out how I should have made it in the first place, and it was far too late to change at that point. Since there's no incentive for me to actually make GalaXQL 3.0, though, don't hold your breath. (Feel free to give me incentives though).
Damn you, minecraft.
atanua for mac
Since Apple stopped supporting me, I stopped supporting Apple. So it's kinda mutual.
Less snarkily, I have no financial incentive to support Atanua on macs, and Apple keeps breaking builds.
bachelor thesis layout
Varies from institution to institution.
can dev c++ game have save feature
can using artwork instead of words be more beneficial?
In what way?
can we do division by using char data type in c using bitwise operation
Yes-ish? Everything's a bitwise operation eventually..
could i use galaxql as the basis for a game
All of 'em.
debugging the millenium falcon pythagorean theorem
diablo 3 resolution 320x200 hack
difference between plotpixel and putpixel in computer graphics
drawing a cube from a shader
You mean a geometry shader?
easy way to do interpolation
Simplify range to 0..1.
explain the (when one teaches two learn)
If you don't get it, you've never truly taught anyone.
how i design a logical circuit for traffic lights using gates on atunua
This was a fun find; seems like someone's giving some real schoolwork based on Atanua =)
how to convert an image to a specific color palette
Depends on what you mean.. tone mapping or mapping to a specific N-color palette?
how to convert to text mode in photoshop
Photoshop has no text mode.
how to read files from a different folder in sdl tutorial
how to render lots of cubes
Damn you, minecraft.
i wanna make my own working game board
if i don't own an ios device and i want to program unity ios
in my cv which is correct national service done or finished
Who cares, as long as the point gets through.
include d3d.h what does it do?
Includes, or tries to include, the file called "d3d.h".
israel you are in my chair sitting
most common magic effect in games
I'd guess healing. Or if you mean visuals, probably fade to white. Or particles. Dunno.
pitfalls of immediate mode gui
They make easy things very easy, but they make hard things very, very difficult.
sdl tutorial finland guy
I actually laughed out loud.
terra nova sfc source port
One can only hope.
vbo cubes lot of
Damn you, minecraft.
what are the things i need to get sol
What's this, spice girls?
what does regeneration do in typomagia
The monsters heal while walking. Normally there's no healing.
what is analytics.sol file doing on my pc
No idea, sorry.
what is text mode screen better?
what is width and height
what things do you need to make your own game
Time, imagination, possibly some skills, but skills can be learned if you have time, and imagination.
where is segment vesa
I kinda recall it may be remappable, but usually the video memory segment, A000, is used.