Porting Dagon to Unity


#101

[quote=“Imari, post:100, topic:731”]Hi turtleman,
I’m possibly misunderstanding your question.

Are you making a game with the Dagon engine and asking if the game, which you are creating, will move seamlessly into Dagon for Unity? If so, the answer is that your game will mostly move over, but will need some modifications.

If you are asking if you need a separate engine (Dagon ++) to just play the game Asylum, then the answer is “no.” Asylum, the game, is being made now with the module Dagon in the Unity engine. It will not require that you have the Dagon engine or the Unity engine separately.

Did that answer your question?[/quote]

No, not quite. I will try expanding my question to be a bit clearer.

I understand that Asylum will made with Dagon in the Unity engine. However, maybe I want to play Asylum using my own modded Dagon++ engine, or maybe I want to port Asylum to a platform Unity doesn’t support. My question is whether development is pointing towards Unity being a “hard dependency” that is, I will not be able to do these things, or a “soft dependency” in the sense that I can suffer some loss of fancy visual effects but still be able to play the basic game with Dagon++. I hope that clarifies :slight_smile:

For me personally this is important because Dagon’s licensing is what originally drew me to Asylum. I understand that I am not the typical audience for the game, and I’m not trying to complain, but a “hard” Unity dependency is a downside for me.

If I were to give a multiple choice question, my options would probably be

[ul][]Definitely yes, Dagon++ can play Asylum. You can stay Unity-free if you want to.
[
]Definitely no, only Dagonity can play Asylum. There will never be an effort on our part to change this.
[]Maybe yes, ideally we want to allow both, but there are technical challenges.
[
]Maybe yes, compatibility is not a priority, but it shouldn’t be technically difficult. Maybe down the road.[/ul]


#102

Unity is used to build the game, the end user doesn’t need Unity to play it
You couldn’t strip Asylum out of the Dagonity and use Dagon++, you can adapt the Dagon++ scripts to work in Dagonity

You can still make a Dagon++ game within its limits, whether its improved on is a question of time I guess


#103

I think Nige is right about not being able to extricate Asylum from Unity. Many of the scripts might be useable, but I’m assuming that Asylum, when it’s released, will have most of the code hidden. Agustin will have to speak to that, though.


#104

[quote=“Nigec, post:102, topic:731”]Unity is used to build the game, the end user doesn’t need Unity to play it
You couldn’t strip Asylum out of the Dagonity and use Dagon++, you can adapt the Dagon++ scripts to work in Dagonity

You can still make a Dagon++ game within its limits, whether its improved on is a question of time I guess[/quote]

So that answers my question, assuming I understand both of you. Thank you for helping me out here. I think I was confused because the original post said this

It got my hopes up. So I wanted to see if that’s something in the works for Asylum, for the player to choose. But I guess it’s more intended for future, non-Senscape projects.

As for being unable to rip out the scripts/hide the code, if that is literally true then that answers my question without a doubt. After seeing the teaser and Serana I was under the impression it would be possible to simply drag and drop the data files into the same directory as the engine, but maybe Asylum will take more steps to prevent this behavior by the player (I suppose the explanation is that Serana isn’t sold so methods of copy restriction are worthless, which is valid reasoning).


#105

Yeah, I think that’s all correct. But don’t leave just yet… :wink:

Even though I think it’s doubtful that Agustin will hand out Asylum whole cloth, he’s still a generous guy. He’s really good about suggesting solutions and giving out snippets of code. Also, once we get our hands on Dagonity, you can get help with your project here from other members. Sometimes it’s the blind leading the blind, but we try… :stuck_out_tongue:


#106

[quote=“Imari, post:105, topic:731”]Yeah, I think that’s all correct. But don’t leave just yet… :wink:

Even though I think it’s doubtful that Agustin will hand out Asylum whole cloth, he’s still a generous guy. He’s really good about suggesting solutions and giving out snippets of code. Also, once we get our hands on Dagonity, you can get help with your project here from other members. Sometimes it’s the blind leading the blind, but we try… :P[/quote]

Yes, I will continue to follow development of this game and Dagon still interests me. I just wanted this one question answered for sure :slight_smile:


#107

I understand what turtleman is asking. It’s like this: “pure” Dagon scripts can be either loaded in Dagon++ or Dagonity. However, the whole idea of migrating to Unity was to make the most out of its features (i.e.: advanced shaders and 3D characters). This means that once you start using the stuff that is exclusive to Unity, there’s no way back. So no, Asylum is being developed exclusively as a Dagonity game and won’t be supported in Dagon++. It’s perfectly possible and easy, for example, to migrate a Dagon++ game such as Serena to Dagonity, though.

Of course, players won’t ever realize (or care) about this :smiley:

There’s something that developers will be able to do, however, and that is build certain parts of the game in Dagonity but then switch back to Dagon++ – provided they don’t touch Unity objects and features. Why you would want to do this? Well, Dagonity has a very nifty editor to create the gameworld that makes things easier, which Dagon++ doesn’t. So that’s something to keep in mind.

Again, we’re going to document all of this exhaustively at some point, so for now I’ll keep answering all your questions in the forum :slight_smile:


#108

Hi Agustin,
Could you or Francisco post a screenshot of the file structure that you are using for Dagonity? Not the Unity screen, but your Mac equivalent of the Windows Explorer. I’m at a dead end, but I’d like to at least be sure that I have the files and folders placed correctly. The screenshot might also give me a clue as to which of the old files should be included or not.
Thanks.


#109

Yes, of course. Let me send this tomorrow as we’re coming to the office. And sorry for not being able to assist you more :frowning:


#110

Don’t apologize. I know that you guys have Asylum and the upcoming Kickstarter to get ready. If I can see where the files go, I should have a better chance to get something working. :slight_smile:


#111

OK, hope this helps. In theory, all you’d have to do is reorganize your assets inside the Resources folder. Take a look especially at how the Locations and Scripts are located. You’ll see several other things in the general Assets folder of Unity, but that’s stuff pertaining to the non-Dagon content for Asylum (i.e.: characters and interface).

Hope this helps for the time being, and don’t hesitate to ask any more questions!



#112

Thanks, Agustin! I’ll compare this with my placement of the files and will report back. ::fingers crossed::


#113

[quote=“Agustín, post:111, topic:731”]OK, hope this helps. In theory, all you’d have to do is reorganize your assets inside the Resources folder. Take a look especially at how the Locations and Scripts are located. You’ll see several other things in the general Assets folder of Unity, but that’s stuff pertaining to the non-Dagon content for Asylum (i.e.: characters and interface).

Hope this helps for the time being, and don’t hesitate to ask any more questions![/quote]

Minor spoilers in picture 3 :smiley:


#114

And that’s not all the locations in the game, just our brief Gamescom build :stuck_out_tongue:


#115

Two questions then!

Generally how many nodes do you have in each room?

Are you creating rooms literally as the name suggests for each building room or are you grouping them with gameplay in mind?


#116

Hi Agustin,
Thank you for taking the screenshots. I think that I am having too many problems to be sorted out prior to the release of Dagonity, but I’ve listed what I changed, my results, and questions below for reference. I’ve also included a Dropbox link to screenshots of my Dagon-Unity set-up after moving folders around to try to mimic your file structure.

The file structure that I ended up with is quite different from Dagon and also different from how I thought the files sorted out in the download of Dagon-Unity. Obviously, I’m missing the prefabs for the atmosphere, sun, etc.

I made the following changes -

  1. Moved the Resources folder from Assets > Scripts > Resources to Assets > Resources
  2. Took the Images folder from Assets > Resources and merged it with the Assets > Images folder.
  3. Moved the Shaders folder from Assets > Shaders to Assets > Resources > Shaders
  4. Moved the Nodes folder (my cube maps as PNGs not TEXs) from Assets > Resources > Nodes to Assets > Nodes
  5. Put the files from the old Modules folder (main.lua, notes.lua, tools.lua, etc.) into the Assets > Resources > Scripts folder.

One thing that is confusing is that the names of some folders are duplicated, like Materials, Scripts, and Editor.
Example : Assets > Scripts and Assets > Resources > Scripts

After changing the file structure, I opened the project in Unity and it’s still not working. I received several errors and have included the Unity screen with the Console panel enlarged to show them. :-[

Here’s the link to the screens -
https://www.dropbox.com/sh/o6lm63xdxti7eco/AAA8S5pe9zHbfFSNYCRWIPWZa?dl=0

Questions:

  1. What goes in the Assets > Resources > Data folder?
  2. Where are you storing the PNG images for your skies and clouds? (I see that you have two Materials folders, Assets > Materials and Assets > Resources > Materials.)
  3. I have moved the LUA files from the old Rooms folder in Assets > Resources > Locations. However, I see that you also have a Rooms folder within the Locations folder and that your Locations folder has individual folders for each room.
    a. Why is there still a Rooms folder?
    b. What are you putting in the individual folders for each room? Perhaps you are putting the various spots, overlays, and node transitions into separate LUA files as you did for the single room in Serena?
  4. Do we need to move over the DLL files and CFG file from Dagon? If so, where do they go?

Thanks, as ever, but I think that I must throw in the towel for now. :’(
Once you officially release Dagonity, I’ll start over. :stuck_out_tongue:


#117

Sorry again about the hassle, Imari. All I can say for now is that the standalone Dagon scripts will be supported “as-is” on Dagonity, so you could keep working with the format.

We’ll try to get back and assist you as soon as we can!

civanT: typicall, around four nodes. Sometimes it’s just one, others can be up to eight, though :o

And yes, we’re creating the locations according to the structure of the actual “virtual” building. Makes things much easier this way :nod:


#118

Hi Agustin,
(Hopefully this is a quick question…) In Unity 5, have you settled on a plugin for the written items, such as books?
~C


#119

MegaBook is still the best option: https://www.assetstore.unity3d.com/en/#!/content/17826

It works just fine with Unity 5. That said, we’ve been producing our books manually. It’s not terribly complicated: most stuff you read in Asylum has two, three pages at most, so it’s easy enough to use the 3D text component on each page and be done with it. The book prefab does provide an animation to turn one page. Depending on the location and condition of the book, we update the page textures and of course the corresponding font per each author.

BTW I’m going to have news soon about Dagonity and the kind of custom-made tools I settled with :slight_smile:


#120

Thank you, Agustin. I have two multi-page books, but most of my “readables” are just a few pages long like yours. I was rendering the text with the images of the pages, but I’ll go back and just prepare the pages without text, then will plan on scripting the text in using Unity’s 3D text component.

I’m really anxious to see how everything gets assembled in Dagonity. I keep lists and try to keep everything in well organized folders, but I have so many small “parts” ready to assemble that sometimes it becomes difficult to recall what I’ve done and what is still left to do. Hopefully, during assembly of the project, all will become clear. :slight_smile:

Except for switching from TGA to PNG, I’ve rendered everything to the sizes and formats used in Dagon. So, any specifics related to tools, image production, how you’re handling close-ups and videos, and so on will be most welcome — especially if it differs from Dagon significantly.

Also, I’m planning to handle all but the inventory puzzles (“use item on this spot”) as close-ups/stills. However, if you have puzzle mechanisms and are handling them differently, any direction on that front would also be welcome.

Thanks again.