Libre Polygon Love 2

!! BEFORE YOU READ FURTHER !!

This article is about a 18+ game rated game from Japan.

There will be no erotic material showed in this article, but the game itself obviously does contain it.

I obviously feel hesitant to post projects like this on my very professional website, but I believe this project is such a great feat of engineer that it deserved to be mentioned regardless.

Polygon Love 2

Putting and blunty but also not going too much into it, Polygon Love 2 is a dress-up hentai game. The game came out in 2005 and it contains fully 3D visual novel engine and also has very decent character customization system for its time.

Why did you do this?

It’s no secret that I am a fan of Vocaloid and vocalsynth music in general. So one day I found myself browsing the MikuMikuDance Fandom wiki and I noticed someone had made an article about this previously unknown game to me that happens to contain 3D models of various Vocaloid characters.

I wanted to extract these 3D models so I did some research on the game’s existing modding tools and it turns out a group of people actually wrote a full game engine replacement for this game, based on its modding tools.

This project was called OPL2 (which I can only assume stands for “Open Polygon Love 2”?).

OPL2

I think for its time OPL2 was a very ambitious and succesful project. Every filetype had been reverse engineered and fully documented. It could run the entire game without using any of its original code. That’s quite a huge feat.

But in my opinion the code was extremely messy and outdated (even for when it was written). It used Python 2 and some really ancient version of the Panda3D game engine.

This project sat on SourceForge abandoned since 2013 and seemingly everyone had forgotten about it, until I came along.

Libre Polygon Love 2

So I looked at OPL2 and I was like, this project is pretty cool, but one problem I wanted to run it on a modern GNU/Linux distro with Python 3.11. So I know Python and what I did was port the code to the latest version of Python and Panda3D.

After the port was complete I still felt unsatisfied with the state that the codebase was in. For example the entire project was contained in 11 gigantic God classes, with most of them of course being unreadable 2000 line large messes.

So of course I did the only rational thing and rewrite almost the entire project from scratch, creating a new project called Libre Polygon Love 2, or LPL2 for short.

You can check out at LPL2 on Codeberg.