Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411423 Posts in 69363 Topics- by 58416 Members - Latest Member: JamesAGreen

April 18, 2024, 03:23:14 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsBattleJuice Alchemist – Now in Early Access!
Pages: 1 ... 30 31 [32] 33 34 ... 37
Print
Author Topic: BattleJuice Alchemist – Now in Early Access!  (Read 76816 times)
Alain
Level 10
*****



View Profile WWW
« Reply #620 on: May 12, 2023, 11:27:40 AM »

BATTLEJUICE ALCHEMIST DEVLOG:
Getting the Band Together



Hey folks,

this week we have some celebrating to do!

For over a year while working on the game itself, I worked on biz dev opportunities to get funding for BattleJuice Alchemist off the ground. It was a lot of work, but now it is done. First, I secured Media Funding Rhineland Palatinate, which is funding from the state I live in. Then I applied and received the German Federal Funding for Video Games. Both are amazing privileges I am incredibly thankful for.


And, last but not least, I found a great publisher who believes in my vision and allows me to even expand the scope and polish of BattleJuice Alchemist: ESDigital Games. Here comes a picture of their team and mine together:


As you can see, not everybody could be at the celebration in person, which is why our Swiss Army knife Patrick created these BattleJuice Alchemist-style portraits, so they could be in the photo. During the course of development, I will be supported by Jan, who does QA and helps with game design, Patrick, who does 2D/3D art, Dominik, who will work on music with me, and Rebecca, my agent from DDM, who will continue helping me with biz dev.

The guys from ESDigital have been doing what they do for over 25 years on a variety of games. They have multiple titles in their portfolio that are similar to BattleJuice Alchemist, such as Remedium by Sobaka Studio. In this gif you might see the similarities Wink


I love the hyper stylized look of many of ESD's games and feel like BattleJuice Alchemist has found a great home. The team and I already got started with work and I could not be happier. Thank you for following along and supporting me on this journey!

Have a great weekend!

Alain
« Last Edit: May 12, 2023, 12:09:30 PM by Alain » Logged

marcgfx
Level 8
***


if you don't comment, who will?


View Profile WWW
« Reply #621 on: May 13, 2023, 02:29:06 AM »

Good job on getting the funding. What will ESD be helping you with exactly? Marketing, Playtesting or even Development?
Logged

Alain
Level 10
*****



View Profile WWW
« Reply #622 on: May 14, 2023, 10:29:13 AM »

Good job on getting the funding. What will ESD be helping you with exactly? Marketing, Playtesting or even Development?

Thanks! As you say, ESDigital helps with marketing and QA, but also localization and porting. And, last but not least, they carry a lot of weight by providing additional funding, which allows me finish the game in a scope that would not have been possible without them.
Logged

Ordnas
Level 10
*****



View Profile WWW
« Reply #623 on: May 19, 2023, 08:11:40 AM »

Congratulations on the funding!  Grin
Logged

Games:

dangersam
Level 2
**



View Profile WWW
« Reply #624 on: May 20, 2023, 04:39:02 PM »

Congrats on getting the funding, that's got to really help!
Logged

Alain
Level 10
*****



View Profile WWW
« Reply #625 on: May 21, 2023, 01:01:15 PM »

Congratulations on the funding!  Grin

Congrats on getting the funding, that's got to really help!

Thanks you two, I appreciate it!
Logged

Alain
Level 10
*****



View Profile WWW
« Reply #626 on: May 26, 2023, 07:03:37 AM »

BATTLEJUICE ALCHEMIST DEVLOG:
Translating an RPG is hard



Hey folks,

I have recently been working on the translation system for BattleJuice Alchemist. And surprisingly I found this to be quite a fun task to work on. Seriously! In software development there is a lot of talk of localization, internationalization and also globalization. I don't want to get in technicalities here, but just talk about some interesting stuff, so let's dive in.

First of all, what we are currently working on is the translation of actual language. This means, we are not e.g. switching visual assets for certain regions. So the basic feature here is that you can switch the language like so:


What we do first is to create a German translation, because it is the native language of our team. Further versions will be made by our publisher ESDigital. The game will come out in quite a lot of languages, but I don't want to say anything final yet.


The first challenges we have to overcome are the obvious ones: In some places you have to dynamically size the font to make the text fit a button, in others, you can implement a scrollable box or find different solutions to accommodate for varying text lengths. BattleJuice Alchemist as a complex RPG is quite heavy on the UI side, so this is a lot of work. And there is actually quite a lot of text. Every word that needs to be translated literally costs money. If the word "level" shows up in 50 places, you don't want a translator to charge you for 50 words, but 1. So you create string tables for words that are used more often, so they only pop up once in the sheet of text to be translated.

All in all I found Unreal's localization system to be super easy to work with. I was able to set up the system and provide our team member Jan with a .PO file that he then could use to make a first test translation in German. We are using a tool called Poedit that runs on the DeepL and therefore often gives you perfect pre-translations out of the box. But it is not perfect. I asked Jan to tell me about the challenges a bit, here is what he said:

When translating with Poedit, I still found there is the need to focus heavily on individual letters instead of broad meanings. Everybody knows the example with that txet taht is rdaelabe if you just scan the context. That does not cut it when checking AI-translations and made me squint my eyes every now and then. For example, strangely, "damage" was translated into "dSchaden" every time, with the "d" being utterly wrong.

We obviously had to check for possible misunderstandings. "Flask" most often got translated as "Kolben", which is technically right, but only in the context of chemistry. That would be fine in the game itself, but not when it comes to a German speaking player base, where "Kolben" would most likely be associated with the "piston" of a car engine.

An ongoing challenge is to make the German text smooth. "Frog Hop Flask", three short words, could be translated as and combined into "Froschhüpfflasche", a one word monster. The German eye stumbles over the double h, each belonging to a different noun. And then the same thing is happening to the double f...


The challenges I myself faced so far were more of dealing with the crimes I had committed in the past. I had to deal with technical debt when e.g. rewriting systems that were lazily relying on comparing text. Very simply put, the computer couldn't say if an item is a "sword" when looking at its name, because it is now called a "Schwert", because we are in a German translation.

This devlog has become a lot longer than I planned, so I'll just stop here. Just one thing I discovered and found really funny is that Unreal lets you localize your game for a LOT of cultures Wink


Let me know if you have questions or own struggles with translations, I like to chat about this stuff Wink

Have a great weekend!

Alain
Logged

oldblood
Level 10
*****

...Not again.


View Profile
« Reply #627 on: May 26, 2023, 01:18:18 PM »

This is a super interesting read, Alain. I've always been very interested in localizing a game, but never did with my first game and I had planned to for Moonbriar if I didn't end up using Voice Acting but now I'm not sure I'll be able to swing it--especially as text and voice heavy as it is. That being said, I imagine that localizing a game with such text-heavy UI and all these RPG and genre-bending elements is VERY hard. I'll be very curious to see how many you and ESDigital end up doing and how the results end up impacting the sales. Thats always been the big question for me was if the level of effort to implement multiple languages would have enough ROI to justify it.

P.S. Said congrats about the bizdev elsewhere, but congrats again! Super happy for you and the team.
Logged

Ramos
Level 10
*****



View Profile WWW
« Reply #628 on: May 26, 2023, 04:47:27 PM »

This is good news, I kinda ignored the translation on my last game because of lack of time and funding but for the next project, I will definitely put more effort into it.

What are your main targeted countries?

And do you know by any chance what is the standard price for translators these days?

 Gentleman
Logged

vdapps
Level 5
*****


Head against wall since 2013


View Profile WWW
« Reply #629 on: May 27, 2023, 05:08:08 AM »

Very interesting post. In fact, I'm thinking about it as well, but you touched main problem: if longer translated texts fit into UI. I will not have auto-downscale font feature, and re-testing everything with new language can be also tedious.

I can propose some ideas I have:

One idea I got is to write me tool which will spew me all texts in new language which are longer than longest text in previous languages. So I will know only those will need to be re-tested.

Another small idea: I have json files for texts and translations, so I can mark json entries which are critical for text size (e.g. decorated title in terminal which I want to be only 1-line without wrapping but fit into terminal width). And that previous tool can spew me texts which are longer sizes only for such critical texts (as I'll have also lot of texts in scrollable areas where I don't care how long they are).

I'm not sure if my ideas are applicable in your case (no idea how localized texts are stored in Unreal Engine), but maybe it can be useful for you.
Logged

Alain
Level 10
*****



View Profile WWW
« Reply #630 on: May 29, 2023, 02:52:32 AM »

This is a super interesting read, Alain. I've always been very interested in localizing a game, but never did with my first game and I had planned to for Moonbriar if I didn't end up using Voice Acting but now I'm not sure I'll be able to swing it--especially as text and voice heavy as it is. That being said, I imagine that localizing a game with such text-heavy UI and all these RPG and genre-bending elements is VERY hard. I'll be very curious to see how many you and ESDigital end up doing and how the results end up impacting the sales. Thats always been the big question for me was if the level of effort to implement multiple languages would have enough ROI to justify it.

P.S. Said congrats about the bizdev elsewhere, but congrats again! Super happy for you and the team.

Thank you oldblood! Yes, I can imagine that for Moonbriar localization may not be feasible, or at least not if you include all the voice acting. And this is a great USP of your game, I think. But thinking about it, this is something you could also discuss with a publisher: If they are willing to invest the money for the translation (including voice acting), you could iron out a deal only regarding the sales of these versions, which I heard is quite common. Without any deeper research, I think a visual novel like Moonbriar could work well on the Chinese market!



This is good news, I kinda ignored the translation on my last game because of lack of time and funding but for the next project, I will definitely put more effort into it.

That's cool to hear you also will translate your next game! I know you are a numbers-guy and since you are making a sequel, you have great data regarding which cultures to localize for. I am not targeting

What are your main targeted countries?

And do you know by any chance what is the standard price for translators these days?

Regarding languages, there is mainly English, French, German, Italian, Spanish, but we also have plans for Portuguese (Brazilian), Japanese, Chinese (traditional), Chinese (simplified), Russian and Korean. But nothing is final yet Wink Unfortunately I don't have any numbers/prices to help you out with.



Very interesting post. In fact, I'm thinking about it as well, but you touched main problem: if longer translated texts fit into UI. I will not have auto-downscale font feature, and re-testing everything with new language can be also tedious.

I can propose some ideas I have:

One idea I got is to write me tool which will spew me all texts in new language which are longer than longest text in previous languages. So I will know only those will need to be re-tested.

Another small idea: I have json files for texts and translations, so I can mark json entries which are critical for text size (e.g. decorated title in terminal which I want to be only 1-line without wrapping but fit into terminal width). And that previous tool can spew me texts which are longer sizes only for such critical texts (as I'll have also lot of texts in scrollable areas where I don't care how long they are).

I'm not sure if my ideas are applicable in your case (no idea how localized texts are stored in Unreal Engine), but maybe it can be useful for you.

I really like your idea of having a tool that kind of gives you the longest version and lets you know where the potential problems are! I think there might be many cases where the English version is one of the shortest and such a tool could be nice to find out "how bad it really is" Wink Maybe I can work out something like this once I have multiple translations!
Logged

Alain
Level 10
*****



View Profile WWW
« Reply #631 on: May 29, 2023, 03:21:29 AM »

Addendum to Translation Devlog

Since you guys also seem quite interested in the whole localization topic, I wanted to add something that I found super important, but the devlog was too long already for the general public Wink

Actually, your translators need to be able to do some simple "coding" themselves to be able to do their job well. Let's say you want to translate

A rare sword

to French. It becomes

Une épée rare

There are multiple issues here. If you want this to be a flexible system, you don't want to have seperate translations for A rare sword, A unique sword, A legendary sword. You want to have the rarity adjective and the noun to be seperate. But from the example we see that in French the adjective comes after the noun, while it is before the noun in English. So what you can do is not only translate the words rare and sword, but also the usage combined as

English:
{rarity} {item}

French:
{item} {rarity}

This way the translator can work in a flexible way. One example from our game is this:

English:
You receive {Number}{PercentSign} less damage, lasts for {duration}{SecondsUnit}.

German:
Du erhälst {Number}{PercentSign} weniger Schaden, hält für {duration}{SecondsUnit} an.

As you can see, the translator was able to change the structure of the sentence and was able to add the word an in the end. I actually did not come up with this myself, but this is provided by Unreal's localization system.


Let's get back to our rare sword. There is a second, even bigger problem here: declension of nouns and adjectives. In English, every item is just rare:

A rare sword
A rare armor


In German and other languages, this is not the case:

Ein seltenes Schwert
Eine Seltene Rüstung


This is actually a bigger problem than the one we tackled before. Note that you run into similar issues with languages that have complicated plural forms. I see three solutions here:

1. Translate all combinations of rarity adjectives and items.
2. Make an elaborate system that tags items with their grammatical gender.
3. Circumvent the whole thing by adding the adjective in its basic form in brackets and not having an article at all:

{item} ({rarity})

so it becomes this:

Sword (rare)
Épée (rare)
Schwert (selten)



I hope some of you found this interesting Wink
Logged

oahda
Level 10
*****



View Profile
« Reply #632 on: May 30, 2023, 01:32:27 AM »

Wooohhh, congratulations on the funding!!! Gomez Gomez Gomez That game does look a lot like BJA at first glance haha

Also love me some localisation. I've worked with Poedit in the past and actually used it again last week at work (all manual tho, never looked into the DeepL stuff).

Unfortunately solution 3 on your list doesn't work in every language. I'm guessing it works in German because adjectives are uninflected in predicative use (das Schwert ist selten, die Rüstung ist selten)? I'm not sure it even works in French (but with rare specifically both forms are the same) but correct me if I'm wrong, I'm not at all sure. In e.g. Norwegian however sverd (sjelden) does look just as wrong* as (et) sjelden sverd (needs to be sjeldent in both cases, -t corresponding to German -es).

*(sjelden in particular is actually weird in that it can in fact drop the -t depending on the speaker but most adjectives can't)
« Last Edit: May 30, 2023, 02:10:40 AM by Prinsessa » Logged

Alain
Level 10
*****



View Profile WWW
« Reply #633 on: May 30, 2023, 05:00:43 AM »

Wooohhh, congratulations on the funding!!! Gomez Gomez Gomez That game does look a lot like BJA at first glance haha

Also love me some localisation. I've worked with Poedit in the past and actually used it again last week at work (all manual tho, never looked into the DeepL stuff).

Great to hear you also use Poedit. You should definitely try the pro version that enables DeepL support, it was a game changer for us!



Unfortunately solution 3 on your list doesn't work in every language. I'm guessing it works in German because adjectives are uninflected in predicative use (das Schwert ist selten, die Rüstung ist selten)? I'm not sure it even works in French (but with rare specifically both forms are the same) but correct me if I'm wrong, I'm not at all sure. In e.g. Norwegian however sverd (sjelden) does look just as wrong* as (et) sjelden sverd (needs to be sjeldent in both cases, -t corresponding to German -es).

*(sjelden in particular is actually weird in that it can in fact drop the -t depending on the speaker but most adjectives can't)

Oh noes, I was afraid somebody would say that in their native language using the basic form of the adjective in brackets would sound wrong. At the current point in time I think I will have to live with the solution being "good enough". But I would love to hear, whether you have an idea how to make it work somehow in a simple way that would also work e.g. in Norwegian?

Also, maybe others could also say how other games do it in their native language. This must be a very common problem after all.
Logged

oahda
Level 10
*****



View Profile
« Reply #634 on: May 30, 2023, 05:44:51 AM »

What I usually see in cases like this when conditional forms aren't supported is just representing both forms simultaneously, like sjelden(t) or sjelden/t.

Not sure if .po files have some neat solution tho, like they do for plurals, or it might be possible to hack something together with custom keywords but it seems tricky.

(the solution for my custom system is just a bunch of tags, so the entry for sverd would be tagged with its grammatical gender and then the entry for "rare" would be a list of forms with corresponding tags and the system can pick the correct one Tongue)
Logged

Alain
Level 10
*****



View Profile WWW
« Reply #635 on: May 31, 2023, 02:22:19 AM »

What I usually see in cases like this when conditional forms aren't supported is just representing both forms simultaneously, like sjelden(t) or sjelden/t.

Not sure if .po files have some neat solution tho, like they do for plurals, or it might be possible to hack something together with custom keywords but it seems tricky.

(the solution for my custom system is just a bunch of tags, so the entry for sverd would be tagged with its grammatical gender and then the entry for "rare" would be a list of forms with corresponding tags and the system can pick the correct one Tongue)

That really helps out a lot, thank you! Also, I did not know about the custom keywords!

Of course you have your own system that does it perfectly :D I envy you for seemingly doing everything you do so clean and your own way!
Logged

oahda
Level 10
*****



View Profile
« Reply #636 on: June 01, 2023, 10:38:04 AM »

I envy you for getting things done! :')
Logged

Alain
Level 10
*****



View Profile WWW
« Reply #637 on: June 05, 2023, 09:49:18 AM »

I envy you for getting things done! :')

:D
Logged

Alain
Level 10
*****



View Profile WWW
« Reply #638 on: June 09, 2023, 04:16:50 AM »

BATTLEJUICE ALCHEMIST DEVLOG:
Playing with Power!


Hey folks,

as you may know our base-building system has been a big addition to the game and it is by far not just a cosmetic feature. I never talked about many of its intricacies, so let's take a look at the power system today!

There are devices that consume and others that generate power. There are different types of power and they are visualized by power cubes. For example, this physical generator here outputs one physical power cube:


The cube tells you that in this designated field you can place a device that consumes physical power and it will be powered. Aside from power and gold there is another resource that you need to manage when planing your base: space. Especially in higher tiers you may want to relocate power. That's where relays come into play.


This can be especially handy when building a multi-floor setup. You could place your power generators upstairs, so they take up less your precious ground floor space.


But in case you decide to have them on the ground floor anyway and are a neat freak like me, please make sure to tuck away those relays under the floor Wink


That's all for today, stay tuned for more BattleJuice Alchemist goodness and thank you for your support!

Alain
Logged

marcgfx
Level 8
***


if you don't comment, who will?


View Profile WWW
« Reply #639 on: June 09, 2023, 04:47:26 AM »

I'm impressed how much detail you are working into the base building process. Seems like an entirely different game! Are there other things besides relays that you can tuck under ground? Is there a basement (guess that could be an issue with a mobile base, but it is fantasy...)
Logged

Pages: 1 ... 30 31 [32] 33 34 ... 37
Print
Jump to:  

Theme orange-lt created by panic