Jump to content
djrapp3

Programming Questions

Recommended Posts

djrapp3

Hi, I am a Unity developer and have worked on several complicated projects and have some questions about your game. 

I was wondering the approach you have taken to your game for optimization standpoint. Have you taken an Object Orientated approach or a Component Based structure similar to Entitas? 

I was also wondering about your networking standard. It seems like the interpolation between characters is sometimes off and I was wondering if you were utilizing an approach similar to the unity given examples of networking structure except possible creating a network identity component of your own with a more basic structure?

Dealing with objects and items, with the latest patch I noticed a bug where the names of items were serialized and the item numbers were displaying. Do you store base item data in a database or do you utilize an XML structure?

Thank you for your time, 
David J. Rapp

djrapp.com

  • Like 2
  • Upvote 1

Share this post


Link to post
Share on other sites
orion310591
3 minutes ago, djrapp3 said:

Hi, I am a Unity developer and have worked on several complicated projects and have some questions about your game. 

I was wondering the approach you have taken to your game for optimization standpoint. Have you taken an Object Orientated approach or a Component Based structure similar to Entitas? 

I was also wondering about your networking standard. It seems like the interpolation between characters is sometimes off and I was wondering if you were utilizing an approach similar to the unity given examples of networking structure except possible creating a network identity component of your own with a more basic structure?

Dealing with objects and items, with the latest patch I noticed a bug where the names of items were serialized and the item numbers were displaying. Do you store base item data in a database or do you utilize an XML structure?

Thank you for your time, 
David J. Rapp

djrapp.com

Its ok to write here, but try other forms to contact them... tickets, emails etc...

Share this post


Link to post
Share on other sites
djrapp3
2 minutes ago, orion310591 said:

Its ok to write here, but try other forms to contact them... tickets, emails etc...

I thought about doing that as well, Thanks. 

Share this post


Link to post
Share on other sites
JAGUAR1950

@djrapp3

With your knowledge of Unity and a developer you’re just the type of guy who should be contacting them directly. And may be able to help them with some of the problems BSG are having.

I would also suggest sending P.M.s directly to the following STAFF members.

@Natalino BSG Crew junior office manager

@Blackb1rd BSG Developer

@dev-george eft-developer

They could probably use your knowledge of Unity and expertise and possibly point them in the right direction.

 

 

Edited by JAGUAR1950
  • Like 1

Share this post


Link to post
Share on other sites
djrapp3

Thank you I shot him a message as well as an Email to the contact us on BattleState Games

 

Share this post


Link to post
Share on other sites
K3OS
44 minutes ago, djrapp3 said:

Hi, I am a Unity developer and have worked on several complicated projects and have some questions about your game. 

I was wondering the approach you have taken to your game for optimization standpoint. Have you taken an Object Orientated approach or a Component Based structure similar to Entitas? 

I was also wondering about your networking standard. It seems like the interpolation between characters is sometimes off and I was wondering if you were utilizing an approach similar to the unity given examples of networking structure except possible creating a network identity component of your own with a more basic structure?

Dealing with objects and items, with the latest patch I noticed a bug where the names of items were serialized and the item numbers were displaying. Do you store base item data in a database or do you utilize an XML structure?

Thank you for your time, 
David J. Rapp

djrapp.com

Hello,

Welcome to the forums ! Being a seasoned dev myself, and a fairly familar dev with Unity, I'm curious : You're probably very much aware that it's easy to reverse engineer .Net assemblies, did you take a look at the code ? Be aware that reverse engineering is against the TOS/EULA you agreed to with BSG (unless expressly permitted by BSG), but you're probably also aware of clean-rooms. So maybe you see where this is going, in case you wanted to do some digging on your own, and provide maybe more insightful suggestions. I'd recommend asking the devs for permissions first.

But nevertheless, as others suggested, do shoot them an email. You seem pretty knowledgeable about Unity, and community help is always a good thing.

Good luck.
 

Share this post


Link to post
Share on other sites
djrapp3
5 minutes ago, K3OS said:

Hello,

Welcome to the forums ! Being a seasoned dev myself, and a fairly familar dev with Unity, I'm curious : You're probably very much aware that it's easy to reverse engineer .Net assemblies, did you take a look at the code ? Be aware that reverse engineering is against the TOS/EULA you agreed to with BSG (unless expressly permitted by BSG), but you're probably also aware of clean-rooms. So maybe you see where this is going, in case you wanted to do some digging on your own, and provide maybe more insightful suggestions. I'd recommend asking the devs for permissions first.

But nevertheless, as others suggested, do shoot them an email. You seem pretty knowledgeable about Unity, and community help is always a good thing.

Good luck.
 

I'm familiar but I have been working at a development company that hasn't required it alot. But, I know it's available and easy to do lol I figured this might be the best way to possible help them out without breaking any agreements or trust. 

Thank yous for the luck!
DJ Rapp

  • Upvote 3

Share this post


Link to post
Share on other sites
Natalino

@djrapp3

Hello and welcome to Escape from Tarkov forum.

First, of, I would like to reassure you that EFT is a very complicated project but the team working behind it is a very skilled and knowledgeable individuals. Especially when it comes to the Unity engine which is one of the main reasons for the choice of the engine the first place. We are also actively in communication with the unity engine developers to tackle issues as they arise. We also do get various suggestions like this from time to time and it might be hard to answer all of them about it. Mainly because some information is not announced publicly and also due to the people who can answer those questions properly on the technical side of things not being able to respond to all those questions due to time and the type of work they have to do.

Which brings me to your topic. I am not sure how many of this we can answer. @dev-george would be the best person to answer all this but he is a busy man and some of this information might not be open to the public. But if he can, he will do so because he is awesome!  :) 

8 hours ago, JAGUAR1950 said:

@Natalino BSG Crew junior office manager

@Blackb1rd BSG Developer

@dev-george eft-developer

Thank you for the mention @JAGUAR1950 and for taking your time to help out a new forum member as always. As for the positions, just to correct slightly:

Natalino - Community Manager

Blackb1rd - Community and Support team leader

dev-george - EFT game developer/programmer

 

Thank you!

  • Like 2
  • Thanks 1
  • Upvote 1

Share this post


Link to post
Share on other sites
dev-george
On 2/24/2018 at 1:26 AM, djrapp3 said:

Hi, I am a Unity developer and have worked on several complicated projects and have some questions about your game. 

I was wondering the approach you have taken to your game for optimization standpoint. Have you taken an Object Orientated approach or a Component Based structure similar to Entitas? 

I was also wondering about your networking standard. It seems like the interpolation between characters is sometimes off and I was wondering if you were utilizing an approach similar to the unity given examples of networking structure except possible creating a network identity component of your own with a more basic structure?

Dealing with objects and items, with the latest patch I noticed a bug where the names of items were serialized and the item numbers were displaying. Do you store base item data in a database or do you utilize an XML structure?

Thank you for your time, 
David J. Rapp

djrapp.com

Hi David.

1) optimization: we’ve got several high cpu consuming areas: phisx, animations, amount of objects in the scene. Our main approach is to reduce using all unnecessary stuff.

2) we already made netcode optimization ( on the factory with ping 10-30, the network lag was reduced from avarage 200-250 to 50-70 for gunfire and damage registration). We don’t use native unity high level network in our project.

3) we do use database for data storing.

  • Like 7
  • Thanks 2
  • Upvote 1

Share this post


Link to post
Share on other sites
ShowMeDeWai

Reading this thread made my heart skip a beat.  I think it is FREAKING FANTASTIC to have the @BSG guys here responding to things like this.  I am not even kidding, my respect level just went up for you guys.  Thank you.

  • Like 2
  • Hot 1
  • Upvote 2

Share this post


Link to post
Share on other sites
PIG-Mathieu

@dev-george Hey George, I've been playing the game for quite some times now and i've also been programming stuff and my free times, and i've noticed similar problems between the servers i used to make and your game.

Back when i was programing little gamemodes and stuff, i noticed that the longuer the gamemode was running, the more likely it was to create error messages and to have big issues.

The same seems to happen to my EFT (according to my client console). The start of the raid is fine, no errors and stuff. But when time goes on, errors start showing and after 40min in raid, the console is just a pure mess : About 10 errors/sec. Have you experienced anything like that already ? Is it related to the servers or is it on the programming side ?

I'm not too sure and kinda lost to be honnest.

Share this post


Link to post
Share on other sites
dev-george
1 minute ago, PIG-Mathieu said:

@dev-george Hey George, I've been playing the game for quite some times now and i've also been programming stuff and my free times, and i've noticed similar problems between the servers i used to make and your game.

Back when i was programing little gamemodes and stuff, i noticed that the longuer the gamemode was running, the more likely it was to create error messages and to have big issues.

The same seems to happen to my EFT (according to my client console). The start of the raid is fine, no errors and stuff. But when time goes on, errors start showing and after 40min in raid, the console is just a pure mess : About 10 errors/sec. Have you experienced anything like that already ? Is it related to the servers or is it on the programming side ?

I'm not too sure and kinda lost to be honnest.

It's all about programming side )

  • Thanks 1

Share this post


Link to post
Share on other sites
PIG-Mathieu
9 minutes ago, dev-george said:

It's all about programming side )

Then i wish you the best of luck, the amount of errors created because of old programs and conflicts is insane. 

Share this post


Link to post
Share on other sites
djrapp3
On 2/25/2018 at 3:35 AM, dev-george said:

Hi David.

1) optimization: we’ve got several high cpu consuming areas: phisx, animations, amount of objects in the scene. Our main approach is to reduce using all unnecessary stuff.

2) we already made netcode optimization ( on the factory with ping 10-30, the network lag was reduced from avarage 200-250 to 50-70 for gunfire and damage registration). We don’t use native unity high level network in our project.

3) we do use database for data storing.

Hi George @dev-george,

First of, Great game. Everything you guys have been doing is right in my book, honestly I think you are keystone in the success of Beta games. The updates you drop not only adding new maps but also adding to and updating previous maps to get rid of spawn killing is a great thing. 

1) With the object issues I noticed how you were loading objects based upon view distance(Especially with scopes and either loading more objects based on raycast or distance) are you doing the same with objects behind the player I'm assuming? Are you utilizing Systems with the player and network movement? I.e having just like a movementComponent with Vector3 data for positioning and velocities and then utilizing one system to look through all players and scavs in the pool with like a moveComponent to handle all of the entities movement in one function? I believe that helps with synchronization too not too sure have never implemented it on such a large scale game. 

2) That's awesome and I definitely noticed was that. The decreased queue times have been amazing and honestly i was just more curious for my own development purposes every bit of knowledge helps.

3) I thought so lol, like I said, I never really worked on too large scale projects just personal projects I created to play between me and a few friends so XML data storage was pretty sufficient. 

I do have a lot of experience in game development and design as a whole. If there is anything you guys need let me know I'm always willing to help out. 

Thanks, 
DJ Rapp

djrapp.com

Edited by djrapp3

Share this post


Link to post
Share on other sites
Natalino

@Maiacup, please, stay on the topic of the thread. I hide your comments due to that. Use the search function to find similar threads, please. Thanks!

Share this post


Link to post
Share on other sites
ShowMeDeWai

@dev-george I have several ideas that I can run by you for helping with catching hackers that your Anti Cheat is unable to catch at the moment.  Of course I do not want to discuss it in the open.  If you want, I can send you a PM with some of the ideas.  I do have one question though.  Are you guys able to review a game after it has been played?

Share this post


Link to post
Share on other sites
djrapp3
3 minutes ago, ShowMeDeWai said:

@dev-george I have several ideas that I can run by you for helping with catching hackers that your Anti Cheat is unable to catch at the moment.  Of course I do not want to discuss it in the open.  If you want, I can send you a PM with some of the ideas.  I do have one question though.  Are you guys able to review a game after it has been played?

Hi guy, This thread is open forum discussion about base programming topics and I would like to try and leave it at that before a bunch of suggestions are added onto this thread. I feel if this isn't general programming questions this can get carried away fast with many pitches and ideas that will make occurrences such as real development questions and discussion fall wayward. I'm sure there are other threads for either suggestions or anti-hack questions. Thanks. 

Nothing against you I'm sure your idea is great! 

But, I believe this would be a nice open forum for not only me but, other aspiring game developers. 

Thanks,
DJ Rapp

  • Thanks 1

Share this post


Link to post
Share on other sites
djrapp3
2 minutes ago, ShowMeDeWai said:

Not sure if you are aware of this, but developing an anticheat is actually part of any good game development.  As we both should know, an online game with out good anti cheat is a failure from the start.

I understand that, I meant more along the lines of the Topic is Programming questions and supposed to be asking questions pertaining to the development not stating ideas, This is supposed to be an informative post for the people reading to learn about how the game is developed. If you have questions about how their anti-cheat is programmed that would be ok. But, stating you have an idea does not fall within those lines. 

Sorry If I offended you. 

Thanks, 
DJ Rapp 

  • Like 1

Share this post


Link to post
Share on other sites
djrapp3
3 minutes ago, ShowMeDeWai said:

I have ideas on how to catch hackers that are not being caught by their anti cheat.  Sometimes it is better to use other things than code to catch hackers...  I had a simple question about the development of THEIR game that would aide me in sharing some ideas.  I am not, and I will not, make public my ideas on ways to catch said hackers.  We had one of the highest success rates with catching hackers on our servers of any of the servers in the world.  There was a reason for that.  It was super successful until one of our admin's decided to start talking about the way we caught the hackers.  Loose lips sink ships.  I am not offended that you are trying to keep this thread on your idea of where it is supposed to go.  I am just trying to say that my ideas fit well within what you think the scope of this thread is about.  That is development of this game that we are both so passionate about.

I apologize. But, if it is also not dealing with code this is another topic that shouldn't be in the Programming questions thread. That would be Infrastructure changes or suggestions. That is not Programming questions. 

I understand you are passionate about the game and I'm happy that I am not the only one that show interest to try and reach out and contact them to pick their brains.

I still believe you should create a thread about an anti-cheat topic in particular or go through direct messaging if you do not want this to be an open forum discussion.  

I am not a moderator so you do not have to take my opinion as valid if you do not wish but, that is just a suggestion. 

Thanks,
DJ Rapp

  • Like 1

Share this post


Link to post
Share on other sites
PIG-Mathieu

@Natalino Hey i was wondering, who is handling the issues related to server/client errors? Because as we've been talking before, since those errors are caused by programs, does that mean that the people programming new system (such as the new mod system in the last update) are also working on fixing those issues ? It seems quite a lot of work

Also, i've seen the Year recap of 2017 got postponed, do you have any idea on when this is going to happen ? I know you guys are focusing on OBT, but those kind of videos are always nice to see what to expect from the game and how hard it is, new players don't seem to understand.

Share this post


Link to post
Share on other sites
robbyjay
On 2/24/2018 at 3:26 AM, djrapp3 said:

Hi, I am a Unity developer and have worked on several complicated projects and have some questions about your game. 

I was wondering the approach you have taken to your game for optimization standpoint. Have you taken an Object Orientated approach or a Component Based structure similar to Entitas? 

I was also wondering about your networking standard. It seems like the interpolation between characters is sometimes off and I was wondering if you were utilizing an approach similar to the unity given examples of networking structure except possible creating a network identity component of your own with a more basic structure?

Dealing with objects and items, with the latest patch I noticed a bug where the names of items were serialized and the item numbers were displaying. Do you store base item data in a database or do you utilize an XML structure?

Thank you for your time, 
David J. Rapp

djrapp.com

Hey, so you know app development as well ..? im am looking for a developer who can help me in FYP. 

Share this post


Link to post
Share on other sites
crystalgless

Hello Robby im crystal im a developer at a beginner level I have learned my developing from many tutorials and blogs which has some amount of coding in it. I can help you but not entirely. the best way to study development is you should take some classes.( note development is not easy lol) 

Share this post


Link to post
Share on other sites
robbyjay

 

so its mean I cant make FYP project for my final year ..? can you suggest me some site or tutorial ..?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...
b38e7c858218a416ef714554dce933a2