Download

Switching to Unreal Engine for Visualization only: is it viable?

Hi all, not sure if this is the right forum for this question…

I have a home project game: it’s like the combat part within Heroes of Might and Magic / King’s Bounty + a bit of the deck building aspect of MTG, but the rules altered for fun in PvP (the game Duelyst is built on the same ideas). I created it just so that me and my friends can play against each other (had I known about Duelyst, I would have probably chosen some other project) + I needed a home project to get familiar with modern C++: where I work we can’t use it. The game is 2D currently, with arts gathered from the Internet: mostly opengameart.com… Recently I met someone who works in the game industry, and would be willing to create 3D assests as a home project, if I switched to Unity or Unreal Engine. Unity I could dismiss right away as an option because of C#: I already have 34k lines of C++ code, and even though the actual game engine is only around 15k (the rest is the visualization+UI), it’s just doesn’t worth rewriting all that.

So my question is: is it viable replacing just the visualization part (including UI) of my game with code using Unreal Engine? I tried keeping the interface between the Visualization (including the UI) and the game engine as narrow as possible: the UI calls functions like Move(unit_id, path) and get back events like UnitMoving(unit_id, path), UnitDamaged(unit_id, dmg, type) + it can access various properties through strictly const interfaces. Based on what I could gather from tutorials/guides, my guess is that I should represent the creatures with AActors, and they would be getting their state changes from the game engine (like “moving from A to B”, “attacking”, …), and should forward some properties of the game engine’s representation of the creatures. Am I thinking along the right lines? What I would like to avoid is having the game engine knowing anything about UE.

Also, as far as I could tell I’m better off with keeping my own network handling, because the game engine is built on using “event” style communication and not on “property replication”.