Showing posts with label game development. Show all posts
Showing posts with label game development. Show all posts

2021/12/30

PIU VR!

Merry holidays and such!

Geril here.
This year was... a lot. Didn't have time for personal projects or anything. Well, at least at the end of the year we had a bit of time to just do whatever, so we're trying to achieve Lussy's ultimate goal: getting a Pump it Up arcade system in our household.

Sadly, we don't have the space or the money for an actual PIU arcade cabinet, so we went for the next best thing: emulation. But not just plain old emulation with keyboard or basic flimsy dance-pad inputs, no. We're going VR.
Well, for the inputs at least, we're not sure about the headset. We may not need that.

So in our time over the holidays, we grabbed one of Lussy's old boots, and attached the Vive controller to it. The position recognition was fine after we figured out the right way to attach the Vive controllers. What Lussy didn't like was that the moment for the actual contact with the floor was imprecise.
Because of that, the next step was to attach pressure sensors to the boots. After some cutting, wiring and duct taping, Lussy found the right positioning for the sensors, and the VR boots 0.7 was born!




We did the whole thing in Unreal 4 – because of course we did –, and used a control rig to make a basic mannequin character mimic the foot and leg movements. It was pretty hard to figure out the right rotation values, but in the end Lussy made it work with the tech we made.
I made a basic dancepad mesh and we reused some of our old assets from our older rhythm game prototype, so we actually have some visuals. Nothing fancy, but it helps us understand what's going on. Can't wait to work on it more.

In January we'll probably have no time to work on it. The start of the year is never easy and now that we have a company it's getting nightmarish. But we'll see.

2019/12/31

2020!

Happy Holidays!

It's Geril.
This was a stressful end of the year for us, but at least we had a few days to chill a bit.
Lussy got a shiny new guitar and I got two buckets of bubble tea pearls for Christmas.

We haven't yet talked about it much, but we actually like making music. I play the blues harp – you can hear it as the background, ambient music in our project, Project Contrivance – and Lussy is playing bass and electric guitar in her free time. So when we work on our own pet projects, we're probably going to make our own music for it.

Oh, and we played Mass Effect 3 again. It's still hard to start it up on the Xbox One, but we finally got to the Citadel DLC, and wow, it's awesome!
Like, this is what was missing. Some humor, creative writing, characters and yeah, some fan service. I mean, seriously, this is the final game of the trilogy, they've got a lot of awesome characters, why not use them?
We haven't done the house-party part of the DLC yet, but even now, we're just happy because of this expansion. I mean, it feels like an expansion, rather than a DLC.
Best DLC ever? Maybe.

We're also upgrading most of our old consoles' video cables to Packapunch cables. These cables are awesome. I had no idea that an original SNES can output this sharp of an image.
So we now have scart cables for the GameCube, the SNES, PS1-2 and a RadX for the N64.

For a Non-CRT setup, these kinds of cables are a must and can add a lot to the image quality. We can't recommend them enough.
Now we only need a Framemeister or an OSSC.


And we also had time to assemble the game boxes.
We still want to print out more N64 and SNES boxes, but they are bigger and harder to print efficiently, so it takes a bit more time to create them.


And hey, it's 2020. We started working on this blog in 2013, seven years ago. GTA 5 and The Last of Us were the big titles that year, and we played a lot of Link Between Worlds, the shiny new console was the Wii U, and at the end of that year, the new generation of consoles – the PS4 and Xbox One – got released. So 2020 will have some similarities to 2013.

We have learned a lot, had some hard times, some good times, and overall we are now inside the game development industry.
Not really as Indie developers though.
We'll change that later. For now we'll work hard, and who knows, maybe in 2020 we'll post more about game development, and less about... everything else.

We're looking forward to the new decade.

2019/05/31

Contriving again!

Hi! Geril here. It was a quite mixed month.

Our friend Davy said something that made us think: we should concentrate on one single project until it's done.
Well, yeah, it sounds obvious, but because we make a living as developers working in outsourcing and such, it's hard to concentrate on just one thing, since we have to train ourselves in different parts of game development.
But he's right. If we want to be independent developers, not just regular developers, then we have to deliver a game. We've got a lot of Unreal projects just laying around, most of them are for paid commissions, but some of them are ours. So we started checking our projects, and their potentials:

OLP is a bit too big in scale to be feasible with just two of us. It's an excellent project to practice animation, locomotion logic and such, but it's a game that we can't really finish by ourselves.

Project Blind aka. Lemniscate. Oh Lemniscate, you grayscale mess, you... The main issue with this project is, we were inexperienced in Unreal, and what we made is very unstable. Last time I tried, it wasn't able to launch itself in the editor. So we'd have to remake the whole thing from scratch. And that game is so dark and uninspiring to begin with that we just don't have the spirit to work on it.
Maybe if we have something to shake up the visuals and gameplay, we'll take another look.

Project BPM. We do have ideas as to where we could take this proof-of-concept project, but for now, it's just a Taiko clone. But that's fine, since it was only made to figure out if it was possible to develop an accurate rhythm game inside Unreal 4, and it was a success. We will work on it further once the concept becomes more solid.

Project Contrivance aka Puzzle For Two. This project works surprisingly well. We checked it again, and wow, it still works fine and can be built on pretty easily. The design is basic, but it can be charming (the robots glow and make cute little noises when you pull the L or R triggers, we still like that part). The movement could be tighter and the camera needs a complete rework, but the game's logic is solid, and basic visual programming as a gameplay element is kinda fun.

So we started working on Contrivance again. In just a week, we made two playable maps (okay, we made one and touched up an older one) and added lots of features to them. We'll bake it this weekend and put it up for download later. We'll leave a link here too – if you have time and want to try something very unpolished and gimmicky, then you're free to download it. We are more than happy to hear your opinions and criticism on it. We have to improve ourselves somehow, after all.

Davy, if you guys are reading, our reply is coming soon! :)

EDIT: We have uploaded the project, here is a link.

2019/03/31

Continuing a past project!

This month, we went back to one of our older projects that we were stuck on. It was this one, originally intended to be a character that utilizes mesh swapping for expressions. We decided to go ahead and make her into a more regular character so we can use her on any platform. She still has a video game associated with her, but it's only at the concept phase and so we're just concentrating on the character for now.


We plan to publish a scene with her on Sketchfab, because it's been *checks Sketchfab* almost two years since we've published anything (but we're still getting new followers).
We probably won't let it be an actual 2 years of hiatus.

For now, it's still a work in progress of course, but we'll share some images anyways.


 



We decided to continue this character because we've been having a rough time with work and we're a little burnt out. I (Lussy) am tired of working with Blueprints all the time, and it's been about a year since I properly textured anything, and Geril's happy to be working with only a few bones and a basic rig. So I got to texturing and Geril made the mesh, rig and animations as usual.

For now, we only concentrated on the face and mimicry, so the body is a work in progress in every aspect.

In other news, we finished a prototype of the Oregon Trail project in the first week of the month. Because we worked with a history teacher, we took his advice and made the game more quiz-like. Now the baked project is in full Hungarian, and we haven't really made any new assets for it, just used some from the previous historical projects.
It's not that impressive or anything – it was done quite quickly – but it has a lot of modules and possibilities.
Here's a video.

2019/01/31

New historical project and also some OLP!

Whew, this has been a tough month.

We've been working on a new project based on The Oregon Trail video game. We're trying to recreate the game mechanics and most if it is already done in fact, and it has only been a week or so. It feels a little like practicing, really. We made it so that it will run on very low-spec devices, something we've never had to worry about in the past, so we're also learning new things.


The shaders are entirely unlit, and the graphical representation so far is very minimal. There is already a working menu system however, and the game can be started up and finished – something else that we've only got to once or twice. It's a bite sized project and it's satisfying to see how fast we are progressing with it.

The project is half Hungarian, half English at the moment, and the subject will most likely be related to Hungarian history, the historical accuracy assured by the same team that we worked with for our past historical projects. Here's a test playthrough of it. There is no UI design yet whatsoever, so it's very cluttered and basic, but gets the job done.




In other news, you can now throw weapons against the wall in Project OLP, and they will stick. So there's also that. Here's a strangely wide video:

2018/06/28

Beatmap editor in Unreal 4!

Hey there! This is Lussy.

We've been hard at work on our rhythm game projects, and we've managed to create a feature we've never thought we could do with Blueprints only, coupled with our current experience. But alas, it has happened.

We've created a beatmap editor inside Unreal 4 using only Blueprints and Rama's Victory Blueprint plugin (it's a godsend, check it out if you're using UE4!).

For the editor, we used osu!'s editor as a reference, and for now it can only create and edit Taiko type beatmaps. We plan to overhaul it almost completely for our own game, but first we had to try if it was even possible to create.

The editor uses .ogg files as music, and creates a text file with a matching name for each new .ogg file. The file contains BPM and title information, as well as all the beat objects or notes in the song - similar to how osu!'s .osz files work. We dubbed ours as .beatmap files though.


Once the file is created, the user can enter a BPM calibrator that lets them tap a button in time with the music. The editor then calculates based on those clicks the BPM of the song, or alternatively, the BPM can be input manually.


After this is done, the actual editor lets users put notes down on each beat of the song, change their colors around and then save the beatmap. The beatmap can then be played in play mode.

The whole thing is very raw right now, because we haven't had as much time to work on it as we wanted to, but it's getting there. This tool will be very useful for developing our rhythm games, and we plan to include it in the game too, so users can create custom content with songs they like.

At this point we're starting to feel like anything is possible in Blueprints with the right nodes and tools. Of course knowing C++ would help greatly, so we're going to get on that, too, but there's no rush.

2018/04/30

Rendering huge crowds in Unreal 4! (Also, we moved!)

Hey, this is Lussy.

This month has been a particularly tiring one. We moved into our new apartment together, so we're still adjusting to all the changes, and we're still trying to find everything that we can't find since then. Like console memory cards.

With this move, however, we finally have a real home office! We both got new desks and lamps, so hopefully our persistent back pain and eye strain will go away. One day. One day soon. Please.
While Geril got himself a regular desk, I opted for an adjustable standing/sitting desk. So maybe the back pain will turn into leg muscles. Who knows. It's good to have the option of standing up while working, anyways.

In other news, we've been working on a massive background-crowd system. You know how in war scenes you have to show large crowds marching forward, or running into the enemy? That's what we're working on, but inside Unreal 4.

We already had a smart crowd system that could react to other crowds and even initiate combat with each other, but no computer could handle rendering 10 000 of those soldiers all at once in Unreal. So we made a simple crowd that can only march forward at various speeds and follow the terrain's slope. For this purpose, we decided on creating 3-frame 'animations' for characters: 3 static meshes that would alternate while marching, like a flipbook. These static meshes don't strain the engine so much, so we could easily show more than 10 000 of them, while also giving the crowd the illusion of being animated.

The static meshes had to be heavily simplified for LODs, and Geril did all of that by hand. This is what our simplified horsemen's LODs look like:



Pretty... artsy.

So, that was our approach for creating a very light crowd in Unreal 4. Would you do this differently?

Until next time!

2018/03/31

Project BPM Demo!

Hi there!

No, it's not an April Fools joke. The time has come for us to post our very first demo on this blog. So here it is!


We already introduced Project BPM in an earlier post. The game itself stayed the same, but the shell of it changed a lot! Actually, it's a design disaster. Neon colors... Sega Genesis aesthetics.... Neon Genesis Evangelion.... Get it?


It's a very rough build, but it appeared stable to us. We packaged it for Windows 64 bit. Since this is our first time packaging for Windows and actually releasing it, without a test team, please tell us if something is wrong or weird!

The controls are simple - the gameplay controls are detailed on the gameplay screen, and as for the menus, they work with WASD and the arrow keys for navigation (so, the difficulty setting), Esc for skipping and Enter for accepting/starting the song. There aren't any customization settings, but those will come eventually; they aren't hard to do, just time consuming.

We also made a brief documentation for those interested in syncing up gameplay elements to music in Unreal 4. It's here.

We were motivated to post this demo because two very kind people contacted us about Project BPM and gave us a new surge of motivation to work on our stuff. This wasn't an easy feat, because we're swamped with work and had to carve time out of our sleeping time.

So excuse us while we go to sleep, and enjoy the demo!

2017/10/31

A GPD Win post!

Hi!

This month we've taught horses to follow paths, made a character creation system and also put together some complex interactive materials. All that in Unreal 4. Too bad we can't show any of this right now, because it's for our current job. In any case, we're learning a lot working full-time in Unreal 4!

There's a thing we only briefly mentioned in our previous post but didn't elaborate on it: the GPD Win that Lussy created the rhythm game project with, using Unreal 4.

The GPD Win is advertised as a portable Windows 10 PC, and Geril bought one about 3 months ago. At first he considered getting a LattePanda, but figured it would be too much trouble to make it stable. (Since, funnily enough, Geril bought it for work, stability is a huge concern)

Even though our GPD is for work, we still use it to play some games: we play World of Warcraft on it using random public Wi-Fi hotspots; Fallout: New Vegas and various indie games. For example, Cuphead runs with a stable 60fps.

To play any "serious" modern games on it, we need to do some heavy work and tweaking just to get it running in a bearable manner, so we don't do it very often. It's just too much effort, but it's just about what we expected.

But as for Unreal 4, we had no clue how it would run. It's a huge relief that it runs well, surprisingly well. Of course everything that can be set to low has to be set to low, and everything takes a really long time to load and compile.

At first, Geril created simple materials, material instances, particle effects and levels. Editing materials is fine, but compiling shaders is a problem - probably because the built-in storage is really slow. It also gets very hot when compiling shaders (and even the maximum fan speed doesn't help), so we actually had to leave it in the fridge for an hour to complete compiling about 5000 shaders. Well, at least anyone who opened the fridge had a laugh.

The framerate immediately drops in the editor when working with any lights in the scene. Funnily enough, playing in editor produces better framerates than not starting the scene at all.


What really works well on it though are blueprints. Last month's practice project was created almost entirely on the GPD, and apart from the controls (using blueprints with analog sticks...), there wasn't much to complain about.

We could talk about what's actually in the GPD, but we think it's irrelevant - it's basically a 64 bit PC, and Windows PCs are known for their customization options, therefore any issues can ultimately be solved. We were positively surprised how agile the Unreal Engine is, and how much work can be done using such a tiny machine.

So we can work even on the go! Yay... I guess?

With that said, Happy Halloween! (The Halloween spirit evaded us this year)

2017/09/30

Keeping the beat in Unreal 4!

We're really looking forward to not beginning our posts with this: we've been very busy this month, and had almost no time for our personal projects.

That's only almost, though. We have had time for an approximately 3-day practice project in Unreal 4 (about 1.5 days of this was done on a GPD Win device, which can run Unreal 4, impressively, and is also portable, so we could work on it during a long trip). I (Lussy) have finally figured out a way to bind things to a soundwave's position (in seconds) in Blueprints, so we've made a replica of the rhythm game Taiko. Because we didn't have to come up with new gameplay, and only had to implement the existing mechanics, we've been messing around with binding things to BPM, and working on sickeningly colorful graphics.


Excuse me for the sub-par play, it was late and oh yeah we had to show off the 'Miss' particle effects!

The song and beatmap in the video are from one of the original Taiko games, but we used this osu file to bring them into our project by exporting the contents to .csv and importing it into a data table.

We tried to only include really light, unlit-only graphics that wouldn't impact gameplay. We even though about only using 2D sprites or just widgets, but it just didn't seem right for an Unreal project. But in any case, the gameplay stays stable even if the framerate dips. I can't overstate this, we're REALLY happy about the whole thing syncing up, and we never had to use ticks. I've been trying for years to accomplish this

So where to from here... This is a really low priority, tiny project, but we have a few ideas for our own gameplay mechanics that we are going to replace the Taiko mechanics with. Only the timing mechanism will stay. Until then, ... We managed to actually sync things up to a given song and rhythm without the framerate messing things up! Woooo!

2017/01/31

Puzzles!

Hi!

We’ve been progressing with the puzzle game project mentioned in the last post. We’re learning a lot about how to make stable things, how to manage a project and time, and how to optimize games for lower-end machines. We have a couple of game mechanics ready, so the bulk of the work will be to build levels using these mechanics.

This puzzle game has a simple goal: get to the end of each stage by solving puzzles and avoiding obstacles. For now, most of the problems are solved by pushing buttons with the character, or placing blocks onto them, with some light platforming mixed in. The whole idea is to mimic programming/digital circuits with the puzzles - think logic gates, nodes.

Here are some gifs so you can check out the mechanics with placeholder art:

A basic level's layout
 
Breakable glass

Playing with momentum

Picking up and carrying items

Opening secret passages

Utilizing moving platforms

Obtaining the bonus box - this box grants the player extra points if taken to the exit
 Many ways to die:




Finishing the level:




We will put the new skills we learned to good use in our bigger projects. Please look forward to more updates in the near future!

2016/12/31

Happy New Year!

2016 has been a long and eventful year. We've started a new project (Lemniscate), it got greenlit on Steam, but in the meantime, we ran out of resources... We've learned a lot nonetheless. Even our latest fanart seems to have turned out good - it has been seen by about ten thousand people. Thanks, Yuumei, for sharing it!

Lemniscate is progressing slowly, because it requires more time and money than we currently have. Seems like we always take on bigger projects than we can handle... Anyways, since it's not in a bad shape and the foundations are laid down, as soon as we get enough resources, we'll start making a demo for it and promoting it again.

In the meantime, we're educating ourselves in game design and development with tiny (really tiny this time) side-projects. Our current side/practice project is a small two player co-op puzzle game that was inspired by the Nintendo Switch, basically. We really like local coop games and they are the minority nowadays, and we love Nintendo consoles in general. Hearing the news that Unreal 4 is going to be supported on the Switch, maybe if the project turns out to be anything good, we'll be able to release it. (That goes for all of our projects, by the way)

Thank you for helping us out with kind words, actions, or just by visiting this blog once in a while. It means a lot to know that we're not doing this in vain.

Happy New Year!

2016/03/12

Feature Update!

Hi!

It's time for another update on how the development is going. We've, since the last update, added:



Objects that can be picked up and thrown, and if they are thrown with enough force, they break/explode. These are not using UE4's built in fracture mesh. They spawn gibs and particle meshes on impact, destroy themselves and of course, make noise, too. 

We can't show you yet, but the monster can now react to noises. It's possible to distract him with throwing an object somewhere far, and if the monster is close enough to hear it (or it is loud enough), he will inspect the sound's location.

---


The doors also got an upgrade. The door system itself changed, now every door uses a certain color, and the corresponding colored card opens the door. They also got this flashy sign on the buttons that shows if they are locked or not.

---


We've added a note system to the game. Every in-game character has a Personal Assistant Device (P.A.D) that they use to take notes with. The P.A.D assigns these notes to the locations they were recorded at inside the ship. If you find someone's P.A.D, their notes will become visible and readable. 


Like this poor fella's.


And this is how the note looks if you activate/deactivate the found P.A.D.

---


We've added visible points to the spine of the monster, so he can be seen from farther away.

---



One of the biggest features we've added is the fire detection system in the ship. If there is a fire, the sprinklers will activate (if the water system is active, of course), and put it out over time. The fire can also kill the player if he stays in it for long enough. Also, if the player stands under the sprinkler, he gets wet and the camera also gets an effect that makes it hard to see. It fades over time, but while he's wet, electric devices will be dangerous to him.

---


The last thing is the way the day ends. After a set amount of time, time resets, and we've added an effect that sweeps through the ship, representing the time loop starting everything over.


Also, related to this, we've made a clock that shows the current time. This will be the clock that wakes the player every day, and he can also use it to determine how much time he has left of that day.

We're still working on the interface, there are a lot of placeholders and debug stuff there, please excuse the messiness.


In other news, we're preparing for our Steam Greenlight campaign, and trying to find legal ways to release the game (we're in Hungary... it's not easy)

This is all for today, see you next time!

2016/02/17

Features in Project Blind so far!

Hi! In this post, I'd like to show you some of the features we've added to the game this month. (Because we realized that the video showed nothing) So, let's go!

First, we have: automatic doors that open when you walk into their range.


The same doors can be closed/opened with access cards, here is one such card:


Using it, you can lock the doors. There are three security levels (three colored cards), each color adds a new level of security to the door. This helps keep the monster out.


We have an inventory system with 8 slots (controlled via the mouse wheel), with which you can pick up, use and drop items. You can even use items with other objects, like putting duct tape on something!


For the items, we have a fully functional vending machine. As you can see, all of the usable items are able to display their names and two info sections on the HUD.


We have two view modes in the game, one lets you see your near surroundings in black and white, the other lets you see electricity, other types of connections, and you can see much farther with it, although in significantly worse quality.


We have a power supply system, any item has the ability to run on electricity, there are power supplies that can be chained together, and switches to trigger each individual item, or multiple items at the same time. With these, we can build a full system, perfect for puzzles. Here you can see power cores that can be inserted into the sockets, which provide power for the circuits. There are other items that can be picked up and thrown as well.


The latest addition is the ability to climb into air vents. This has no animation or transition yet, so it looks weird, but it is also fully functional.


We'll try to update more frequently, as we're moving faster and faster in development. See you next time!