#ue4-general

1 messages ยท Page 37 of 1

polar hawk
#

but code flow and logic is the same

plush yew
#

well for some things it is convinient to be on the C++ version if I am doing C++ such as on SuggestProjectileVelocity

#

It says Trace Option is an enum but doesn't say what the enum can be

#

I can click through and see what the choices are

#

well, its not really a problem with the docs, its just me trying to shortcut my way to the C++ versions that don't show up high on the search

#

so its really a personal problem

polar hawk
#

Ah, the API docs

#

well, the issue with that is that 95% of those docs are auto generated and not hand made

#

And no one really uses it because of that

#

So not enough people complain about things like that

#

It really doesn't make sense that the blueprint api docs have links that do nothing

#

I'm pretty sure this is publicly accessible now

#

Defintiely the best place to report

plush yew
#

@hollow dune What were the assets you moved?

#

Well I guess it might have been too long pathways for the cooking to finish

hollow dune
#

@plush yew I removed everything, still wouldn't compile, I added all the content to a fresh project, it works

#

something was wrong with that project file specifically

plush yew
#

sometimes projects can get corrupted like that, good thing you got it solved though

cursive dirge
#

@plush yew I'd actually like crosslinking between bp and cpp api

#

I've suggested that a long time ago too

#

Usually it is the other way around and how Allar said

#

BPs have almost always some description unless it is a enum or struct

#

Where cpp api is mostly generated and not useful for anything else but browsing the functions and class hierarchy

#

Almost every time I open cpp api page for a function it's like this "DoThis() - Does this"

#

Most descriptions are something you can figure out from function name already, so they are pretty much pointless

hybrid scroll
#

Hey, I have a question: Can I change the color of text in the output log?

#

Not all the text. Just specific things that I put there?

#

...and with blueprints?

distant needle
#

@hybrid scroll Expand the Print node. there's a color option there

dapper granite
#

really dumb question but for some reason my viewport resolution has gone way down, its super pixelated, I've tried a bunch of setting but it still stays pixely, is there a way to fix this?

kindred viper
#

swcreen percentage probably

#

*screen percentage

#

try opening the console and typing r.screenpercentage 100

dapper granite
#

thanks! that worked! ๐Ÿ˜ƒ

plush yew
#

anybody know when 4.13 is gonna be fixed so videos when imported are actual videos?

feral dirge
#

Come again?

plush yew
feral dirge
#

They redid the media framework

#

Isn't there docs up about it?

plush yew
#

no idea. i should probly look for them

#

seems you can't just import them now. you have to reference them

hybrid scroll
#

@distant needle Lol. when was this added? Anyway, this doesn't work with output log, just on screen. And is per string, not per character, so not exactly what I was hoping for. But thx.

distant needle
#

@hybrid scroll warnings are yellow, errors are red

#

ok I think I know

#

setting messages as warnings or errors colors them

#

plus you can explicitly set a color

#

but that's available through C++

upbeat fern
#

Alrighty, I'm trying to stream levels, but wondering if a sublevel can have its own sublevels.

foggy valley
#

the docs are never up to date

#

unless they're brand new

upbeat fern
#

found it oddly enough

#

was in some of ramas code.

plush yew
#

what did you find?

upbeat fern
#

GetWorld()->StreamingLevels

#

gets ones that aren't loaded

plush yew
#

okok nice you got it solved ๐Ÿ˜ƒ

upbeat fern
#
{
    Super::BeginPlay();
    bLevelsLoaded = false;
    LoadSubMaps();
}

void AOrbiverseLevelScriptActor::LoadSubMaps()
{
    NumberOfMaps = GetWorld()->StreamingLevels.Num();
    for(ULevelStreaming* LevelStreaming : GetWorld()->StreamingLevels)
    {
        LevelStreaming->bShouldBeLoaded = true;
        LevelStreaming->bShouldBeVisible = true;
    }
}

void AOrbiverseLevelScriptActor::Tick(float DeltaSeconds)
{
    Super::Tick(DeltaSeconds);

    if (!bLevelsLoaded)
    {
        LoadedMaps = 0;
        for (ULevelStreaming* LevelStreaming : GetWorld()->StreamingLevels)
            if(LevelStreaming->IsLevelVisible())
                LoadedMaps++;

        if (LoadedMaps == NumberOfMaps)
            bLevelsLoaded = true;

    }
    else
    {
        AOrbiverseLevelScriptActor::FinishedLoading();
        SetActorTickEnabled(false);
    }
}```
#

thought that'd auto resize

#

but w/e

karmic thistle
#

Hi guys!! From Spain! Working hard in 3D Modelling and Cinematic videos!

plush yew
#

Got some vids? ๐Ÿ˜ƒ

upbeat fern
#

just need to send a progress number to a sublevel

plush yew
#

aha you need to pass a value to another unloaded level, why not pass it when loading that level?

upbeat fern
#

nah, I have a base level, which has litterally nothing in it

#

and then spawn in my loading screen

#

then that has a percentage that updates off how many sublevels are loaded

plush yew
#

okok well save it in your gamemode

#

save universal values there

upbeat fern
#

mm, could do

#

game instance fine also ?

#

or no

plush yew
#

yeah should still be universal

upbeat fern
#

awesome

plush yew
#

Wait

#

no gamestate, I always get those confused

#

not gameinstance

#

save it it gamestate, better for universal values

upbeat fern
#

kk ๐Ÿ˜ƒ

plush yew
#

sry for being so sloppy in my help right now, been awake for too long, had a long day

upbeat fern
#

np, went to sleep at 4am, got up at 7am

#

xD

plush yew
#

xD

hollow dune
#

How do I package additional non standard files with UE ? I get this error in logcat on android D/UE4 (27835): [2016.09.19-06.52.24:901][-9146460]LogDataBase:Error: SQLite: Unable to add database '../../../Settlements/Content/Databases/ML_DB.db', it is not valid (problems opening it)!

#

but my packaging settings are as follows...

#

It just doesnt seem to pack my .db file

#

I've tried all the options individually and together

plush yew
#

@hollow dune

#

You awake?

hollow dune
#

Yeah brother

plush yew
#

Not sure what it is yet, tried packaging to Windows to see if it elobarotes why it doesn't find the .db valid?

hollow dune
#

Ill give it a try, it seems to me its a packong issue though but illsee

plush yew
#

ok well before that

#

try checking if the sqlite3 header file is not included somehere it should be included like the sqlitedatabase header

hollow dune
#

Would it not throw a syntax errror instead of an exception if that was the case?

plush yew
#

Yeah your right, atleast when building the project it would

hollow dune
#

Im right for once. Brb getting the wife to take a pic of me in front of the monitor

plush yew
#

๐Ÿ˜ƒ

hollow dune
#

Im sick of ui only now haha i just want to make something with more but i need toget these 2 out of the door first

plush yew
#

@tiny prawn

#

We need your help ๐Ÿ˜ƒ

#

Do you see any reason why he couldn't include the .db he is triyng to include?

hollow dune
#

@plush yew for hero moderator

#

I'm going to try a build without a .pak, maybe the .pak ends up destroying the structure

#

nope

torpid charm
#

Hey people. If I want feedback for my games trailer, is this a good place to ask, or is this channel only for development problems?

hollow dune
#

@torpid charm try Work In Progress matey

#

or lounge

#

they're ideal for it

torpid charm
#

ok, thanks!

cloud cobalt
#

Anyone tried to make a moddable game with UE4 ?

kindred viper
#

not yet

cloud cobalt
#

I've made sure my game can ba modded, now I'm taking a look at the actual workflow for modders, and it looks bad

kindred viper
#

have an idea how to set it up but I was kind of hoping there would be a standard way

cloud cobalt
#

Basically the Epic-recommended way appears to be "ship the editor version of your game"

#

And then the modders can use the session frontend to launch a plugin build on top of your release

#

It produces a nice .pak file that works like a patch, which is cool for Steam etc

#

But I'm not very happy with having to distribute the game + editor + uncooked assets, basically anyone can rebuild the game as-is

#

(On top of being a pain)

kindred viper
#

yeah im not into that idea although I did love getting UE3 games that came with an editor, like Ravenshield.

hollow dune
#

@cloud cobalt aye looking at how ARK is modded, it's kind of... iffy

cloud cobalt
#

"We're currently discussing next steps in regards to mods in UE4, process for shipping cooked vs. uncooked content, as well as making editor distribution a bit more straight forward" - Chance in May 2016

kindred viper
#

cool it should only take a couple of years then ๐Ÿ˜„

cloud cobalt
#

Yeah :/

grand python
#

Oh nice. maybe its ready when our game is also ready. We also want to ship a Editor with it. But we also want it only to be a level editor.

cloud cobalt
#

I doubt it's coming anytime soon, modding looks very low priority for Epic

#

What they actually did this year is DLC support

#

Which is fine, mods work like DLC, but I can't shake the feeling that they don't really care about it

grand python
#

Yep. i mean i'm fine with the current options. But its still UE4 with nearly all features when you just want to do a custom map.

#

and then getting that into the game itself. Sure that Modders will accomplish that. But i don't see newcomers that want to try out modding for the first time to get warm with that

#

I for myself started getting into modding and Developing trough Hammer Editor

hollow dune
#

@regal mulch thanks mate, check up a little bit, the first picture is mine along with the issues

fossil socket
#

when tim sweeney criticsed sony for their modding decisions a week or two ago, someone actually did bring up the terms for redistributing the UE4 editor

grand python
#

No idea why. But i always confuse Tim Sweeney with John Carmack

#

shame on me

#

But Sweeney's twitter Avatar is... HD

regal mulch
#

@hollow dune Hm, that's not easy. Does it package for Windows?

hollow dune
#

I'll give it a check now, I was told it was a single add this directory to the copy list but it doesnt work, ill try x64 now

regal mulch
#

Just to make sure if it's a packaging or an Android thing

#

Cause i can't really help with android

hollow dune
#

@regal mulch crap, it works on PC

#

so it's about packing on droid :/

regal mulch
#

Hmpf

hollow dune
#

only thing I've seen, I'm unsure if it's what I want

#

even here again, states to do what I've tried

regal mulch
#

I never did that

#

Can't help you there mate

hollow dune
#

@regal mulch thank you anyway matey

regal mulch
#

Sure

vale silo
#

How many people mod Ark and how many active players does the game have ?

grand python
vale silo
#

I think before worrying about modding one needs to worry about game becoming a huge success with large number of active users. Even then most players will only mess with modifying skins and stuff like that.

grand python
#

For our game. we want to enable modding as soon as possible. even if we don't have a big playerbase

vale silo
#

Up to you of course, but from experience I am saying you'll spend dev time and resources implementing modding and that most likely won't pay off

cloud cobalt
#

I think it vastly depends on your game.

#

In our case, adding decent modding support took us only hours because of how the game works

#

So even if only 5 people try to add mods, it's not like anyone's time was wasted

grand python
#

We just want to get a Level Editor out for Modders. So they can do custom maps.

shadow hawk
#

Just posted my latest video for Evil Horizon in #work-in-progress

fossil socket
#

depending on what type of game it is, modding definitely pays off

cloud cobalt
#

@grand python you can probably fork UE and cut ouf the parts you don't want

fossil socket
#

i implemented steam workshop support in our source engine title and it's immensely popular

grand python
#

nice. What is it called?

fossil socket
#

"how"?

grand python
#

derp

#

fixed

fossil socket
#

insurgency

grand python
#

OH

shadow hawk
#

any 3d artist or 2d artist in here looking to work with a team?

grand python
#

i'm a first purchaser. And i also played the original mod

#

i also started a Map for the original mod back in the days

#

never finished it...

cloud cobalt
shadow hawk
#

is Jobs for just paid work or all?

cloud cobalt
#

I believe it's for everyone

shadow hawk
#

Okay thanks!

cloud cobalt
#

Maybe check with @ashen brook

grand python
#

Insurgency (the mod) also led me to Modding in general

#

that and gmod ofc

cloud cobalt
#

I started game dev through modding (CS, then CSS/HLยฒ, then UT3)

#

Having mod support in my game feels right ๐Ÿ˜ƒ

grand python
#

Mod support is nearly always a good thing.

cerulean sequoia
#

did stuff for Quake 3, UT99, WC3, CSS, UT2004, Cube2, UT3, GMOD.... and they all benefit from mod support

shadow hawk
#

Whats good about Mod Support is there is no negative effect

#

you use it or not

grand python
#

Most of the time i just enjoy the amount of custom maps that come out.

shadow hawk
#

Its just another headache for Devs lol but as a player its just another thing your game offers even if they never use it

#

I always wanted to make a hack game mode, where if the game detects a hacker there not banned there put in lobbies with only other hackers LMAO!

#

Hackers playing hackers can lead to them quitting there hacking ways lol or quit the game.

cerulean sequoia
#

in general, mod support usually outweighs time and resources that had to be spend creating it. it increases the games lifespan, draws in potential new customers and has several other benefits, maybe it spawns another DayZ type of mod that popularizes the entire franchise. Even if you as a dev think your game is too complex for mod support (I'm looking at your Red Faction Guerilla and Battlefield 3!) people are smart, and modders can figure stuff out on their own.

grand python
#

i just say: Battlefield 2: Pirates Mod

cerulean sequoia
#

see how many great franchises UT2004 and HL2 spawned... Red Orchestra, Killing Floor, Insurgency just to name a few

ashen brook
plush yew
#

@grand python How do you plan to have the modding? To extend the editor to some extent, to the players?

grand python
#

No idea right now. Main priority is the game it self right now

#

But i guess since we mainly want it just for custom maps. Like Squad/ARK and VR Funhouse did it

plush yew
#

Ok well if it comes to the point and you want to add modding, then extending the editor will require epics permission, as it would otherwise be illegal, so you need to do it in conjunction with Epic Games
@blissful reef If epic hasn't changed their policy that is

grand python
#

Sure

blissful reef
#

Policy hasn't changed

#

and you can modify the editor without our permissions

plush yew
#

But not extend it to players for usage like in ARK

blissful reef
#

it's the redistribution part that requires permission and to be distributed via our launcher if i recall

plush yew
#

Yes exactly, that is what I was talking about ๐Ÿ˜ƒ

#

Just don't want @grand python to dig their team into a legal ditch so better to infrom way ahead of time then that they do it without knowing the policy

#

๐Ÿ˜ƒ

grand python
#

I'm aware of that but thanks

cloud cobalt
#

@blissful reef is there an official modding guide from Epic ? There is an Epic-authored modding guide on the wiki, but it only covers the purely technical aspects of it.

#

No mention of how the editor would actually be distributed to modders

blissful reef
#

you'd talk to someone on the marketplace team and get slotted in the modding section like Ark

grand python
#

Preferable would be (if the game is on steam) trough the "Tools" tab in steam. Otherwise like ARK and Squad did it via the Epic games launcher

cloud cobalt
#

@blissful reef So basically you need Epic's permission to have mod support in your game ?

blissful reef
#

yes / no, depending on how it's structured

#

If you need to redistribute a modified editor, yes.

#

if you just require a specific editor version, and have some plugins you provide, through some other means, but works on vanilla release, nope

cloud cobalt
#

Okay, that makes sense.

blissful reef
#

The license does not say 'you need our permission', i believe the actual text says, you must only redistribute modified editor / engine code to other licensees

#

the launcher happens to be a good way to do that

#

all of this information is not provided by a an epic lawyer, im not your lawyer, read the license...etc...etc...etc

plush yew
#

Non editor mod tools = No permission,
Extending editor as mod tools = Permission

cloud cobalt
#

@blissful reef So if you only need vanilla Unreal, you're only supposed to tell modders to get UE, then open a project you provide

blissful reef
#

yup

cloud cobalt
#

Cool

#

No redistributing a prebuilt vanilla editor if I understand well

blissful reef
#

correct, they still need to get it via the launcher, sign up...etc

cloud cobalt
#

Last question, if I may abuse your patience : in this setup, you have to provide everyone with your source assets, correct ?

#

Assets won't be read-only like they were in UT3 for example ?

blissful reef
#

dunno

cloud cobalt
#

k

#

Thanks for the answers

plush yew
#

@cloud cobalt

#

Section one in the Eula

cloud cobalt
#

Thanks

#

Still trying to understand exactly how people would mod our game ๐Ÿ˜ƒ

grand python
#

I don't know your game so i can't help you :P But in general. Custom maps are always a possibility

#

skins. and retextures

#

up to complete conversions

cloud cobalt
#

The game side is done for us, to be clear. Mods could already add any content, replace materials, etc. The big unknown is the process modders will have to follow.

#

It's more a question of how to get the tools to the modder than a technical issue n the game

grand python
#

oh. yea

cloud cobalt
#

For example, we don't know if it's possible to generate a DLC with an arbitrary part of the contents

#

Unless you have the release artifacts from the latest build

#

We don't know if builds can be compatible with newest releases, assuming contents stay compatible

#

Basically we feel like no guidance is available on the process & release front

grand python
#

Ah i see

#

That's stuff we also have to go trough (if we add modding). So its also relevant to us. @cerulean sequoia

plush yew
#

No when releasing you will most likely be using the same version of unreal, won't be able to upgrade smoothly

cerulean sequoia
#

why did you tag me?

karmic thistle
#

hahaha

plush yew
#

API vhanges could differ massivly and that could need alot of manual reworking for it to work

cloud cobalt
#

I'm not even talking about engine updates, @plush yew .

grand python
#

Didn't know you're reading right now.

cloud cobalt
#

More like I release version A, someone does ModA, can modA work on my newest version B of the game ?

#

Assuming B changes the copyright notice only

grand python
#

It's the modders job to update thier mods

plush yew
#

^

grand python
#

you just have to provide updated modding tools then

cloud cobalt
#

Yeah, sure, but this is the sort of stuff I'd like to know

grand python
#

sure. stuff like that happens but cou cant really do anything against it

#

Unless you restrict what can be modded.

cloud cobalt
#

What ? i'm just trying to understand what would happen

#

I don't want to restrict anything

#

I want to know if I can provide modders with a decent path to mods

#

And what that path is

grand python
#

Hm... I only can think of shipping the UE4 editor with your game. then modders would have to look up everything on thier own

cloud cobalt
#

You can't do that.

grand python
#

? i Thought you can do that if you get the permission

#

i'm confused

cloud cobalt
#

Yeah if you release through Epic Launcher after being approved by Epic sales team

#

Like the 1 previous title that did it

cerulean sequoia
#

you can't ship the editor with the game

cloud cobalt
#

^

grand python
#

Ah okay

#

So.. Then this would be the only way to do it right now ?

cerulean sequoia
#

either you release a plugin that works with the default editor, or you talk with the marketplace team to get your mod kit in the launcher

grand python
#

via the launcher ( mods tab )

cerulean sequoia
#

or you give them the uproject :P

grand python
#

Thats basically the same as the modding kit in the epic games launcher

cloud cobalt
#

If you're shipping and Steam or other, according to @blissful reef the process is to distribute your .uproject and all sources, contents along with it. Then people get Visual, build the game & editor, do mods.

#

Q : Do modder require the release artifacts as well (stuff in /release/ folder) to be able to build a DLC ?

#

Q : Can this SDK still work if for example you add new content, unrelated to mods ? Or do modders always need the latest version ?

#

Q : Do game updates (say a minor texture tweak) break previous mods ?

grand python
#

wait. dont you want to do mods as a .pak or something?

plush yew
#

Ark doesn't use the Editor tab, they only have their game their but clicking the downlaod modding tools button only redirects you to instructions on how to install the modding tools, but it's great for exposure of the game

cerulean sequoia
#

care to explain?

cloud cobalt
#

But this process requires the release artifacts from the latest published release

#

My first question is : do I have to provide this artifact or can DLC be built without it ?

#

It's really a question of what do modders need to be able to create mods

#

AFAIK the session profiles are user-specific and can't be distributed easily, for example

cerulean sequoia
#

they are not stored in the project yes, but instead in appdata I think

cloud cobalt
#

Yes

#

I mean, the overall process sucks, for the developer and the modder

cerulean sequoia
#

yeah it sure isn't properly streamlined and requires unnecessary steps that shouldn't be there, session profiles and all that

cloud cobalt
#

Another issue is that I can't redistribute some of my contents (marketplace assets)

#

So I would have to exclude them from the SDK

#

But then the DLC build would detect the discrepancy between the asset registry and contents

cerulean sequoia
#

I would really love an option for cooking mods via the content browser, maybe you have to create a new folder for your mod stuff and you put all your custom content in there, then rightclick the base folder and click on something like "cook mod" and it does all the rest for you

#

yeah we would need a proper asset manifest that would work without marketplace assets

cloud cobalt
#

Going to write a thorough thread on forums to ask all of this

cerulean sequoia
#

you should be able to mark a folder as "do not include in manifest" or something

#

I would love if you pm me the link to it once you wrote it :)

grand python
#

Send the link to the thread when you're done. Wanna see the outcome

blissful reef
#

You wouldn't give them your source, just to be clear

#

unless you want them duplicating your game ๐Ÿ˜›

cloud cobalt
#
#

@blissful reef I already did ๐Ÿ˜ƒ

#

But I fail to see how else I can separate the game from the editor

vale silo
#

I am almost certain no one will mod your indie game (at least in the quantifiable numbers) unless your game gets as big as a handful of indie hits out there (Minecraft?!)

cloud cobalt
#

It's not like we care how many people do it. People have been asking for it, we like it, it's trivially done in the game itself.

cerulean sequoia
#

"no one" is a concept that doesn't exist in modding, there is always at least one who will try. There are freaking mods for obscure games that don't even have a modkit.

#

also comparing anything to minecraft is dumb, minecraft sold better than a lot of AAA games

vale silo
#

I am simply pointing obvious out.. Indies have limited resources to make and maintain a game (and by indies I don't mean ex-AAA with large savings, connections and potential to ace Kickstarter)

#

if you put more effort making a better game, users will be more grateful. If you spend time making game modable, instead of making a better game, there is a good chance 3 people will be extremely happy, while potentially large userbase will be unhappy with the game itself, which will lead to a shorter lifespan and less monetary returns

#

again, talking from personal experience of lone developer

cloud cobalt
#

We didn't spend any time on modding. Like I said, the game is moddable by design.

#

Like I said earlier, it depends on your game.

cerulean sequoia
#

our game is build in a way that modding is basically just a click away, if the game is already supporting it, why not enable it?

vale silo
#

UE4 isn't Quake... Quake was easy to mod. Nothing crazy about making sure users can access game data, package and distribute mods. UE4 is totally opposite. So, aren't you going to spend time figuring out how to make modding accessible ? It has nothing to do with your game moddable by design. It's about Engine not being modding friendly.

#

If UE4 was mod-friendly, I wouldn't even chime in ๐Ÿ˜ƒ

cloud cobalt
#

UE4 does have a modding pipeline, the difficulties seem to be licensing-related

#

Basically the "can't redistribute editor" thing

#

The only technical issue I outlined in my post is how DLC build will react to deleted content

#

Which is also a licensing issue

vale silo
#

is there a clear and comprehensive docs about enabling UE4 game modding (and whatever needs to be accounted for when making UE4 game with modding in mind) ?

#

I recall asking about how to make sure released game and work with DLC and how to author DLC post-release, but I don't believe I ever got any response.

cloud cobalt
#

Making a game with modding in mind has litte to do with Unreal, but we did it by using DataAssets extensively

#

So that any mod can override gameplay properties or add new content

#

Basically don't hardcode stuff in your code/Blueprint, use assets or external files to store data

#

Make the game modular so that one BP file can replace another

#

UT3 had extensive mod-specific logic in the code, for example

#

Every gameplay property was checked against 'mutators' objects

vale silo
#

for example, in idTech based games, content is replaceable by simply providing pak file with higher number that the paks in original game. Let's say Doom 3 had assets007.pk4 as last number pak. If I make a replacement model for player and package it into assets008.pk4 (assuming folder structure and assets naming is identical inside virtual file system), player's model will automatically be replaced on load. How would that work in UE4 ?

#

Nowadays people don't give a damn about code. What they are more inclined to mod is visuals (skins, models, add new models/textures) and make new maps (using existing assets or mix of existing and new assets).

#

I recall none of these scenarios is documented officially

#

also there is a good chance one has to modify engine to allow such modding capacity

#

plz correct me if I am wrong

cloud cobalt
#

Well my project is a space sim, which isn't a shooter, but I believe solutions would be similar

#

I'm pretty sure you can change a model in the editor and generate a patch that replaces the head in the base game

#

Or you can have a data asset like me, and at game start, list all PlayerHeadAssets so that the player can pick

#

Or you can iterate all blueprints with a name starting with PlayerHead

#

Just because the solution isn't a simple low-level file change doesn't mean it bad

#

And no, you don't need to modify the engine at all for this

#

The troubles lie with licensing, redistribution of content

#

btw I do give a damn about code, see my game's sources on Github ๐Ÿ˜ƒ

vale silo
#

well, it is bad if it's not obvious solution

#

nowadays it's all about convenience for users

#

if a users has to jump through hoops to get his/her model or textures into your game, it's not good

#

same goes for mapping

#

if a person can't launch editor and simply start mapping using your game's content, then it's a fail

cloud cobalt
#

I agree about the mapping part, but like I said it's not a technical issue with the engine

vale silo
#

so you are saying it's that easy to make maps for UE4-based games?

#

(assuming user signs up with Epic and gets Editor through launcher)

cloud cobalt
#

it is easy

#

Assuming the developer provided the environment

#

Which is the root of my questions

vale silo
#

what do you mean by "environment" in this case?

cloud cobalt
#

In an ideal world, developers would be allowed to redistribute builds of UE4 editor

#

= what you are using right now (level editor, content browser etc)

#

UT3 did this, you just needed to start the editor executable, Steam even offered it at launch

#

When I say allowed, I'm really talking about legal fine print, not technical issues

#

You are not allowed to do it, so apparently you need to distribute your working directory (uproject file, sources, contents, config, etc)

#

Then people get UE, browse for your project, open it, and they have the same tools you do

#

Then they can generate a .pak file with all their modifications and release it

#

If you don't have marketplace assets or C++ source, that's it, nothing more

#

It's not complicated

#

If you do, see my forum post

vale silo
#

well, but then users will have access to your BPs

#

sounds like a mess

#

what about replacing models, sounds, textures in UE4-based game ?

#

they don't really need your project

#

let's say you provide Content folder layout, specs and filenames for your assets you willing to allow to be replaceable

#

I assume end-user can sign in with Epic, get Ue4, create project with said Content folder layout, make a replacement model/sound/texture and author it into .ueasset

#

what's next ? how to actually package such mod, distribute it and how to use it with your game to see replacement in-game ?

#

how to make sure it can work with Steam Workshop ?

#

like I said earlier, idSoftware nailed it. It was extremely easy to distribute and use content mods (actually any mods) for Quake 1/2/3 and Doom 3

#

all that was required was downloading mod and dropping it into game's folder

cloud cobalt
#

Are you sure you did modding with Unreal before ?

#

End user just needs to put MyMod.pak into GameDir/Mods

#

That's it

#

Steam Workshop does just that

vale silo
#

for more elaborate mods (new content), mod content was placed into subfolder with distinct name and txt file (description.txt as I recall) containing mod's name. Engine would "see" that txt file, read mod's name from it and create menu item in the Mods menu. Bam!, that simple.

#

I never worked with UE until UE4

#

I am from opposite camp - idTech modder ๐Ÿ˜ƒ

cloud cobalt
#

You can do the same thing in Unreal

#

It's up to you as a developer

vale silo
#

hmm.. sounds easy. Was it in UE3 only or is it how UE4 does it too ?

cloud cobalt
#

UE3/UE4 provide a technical infrastructure to easily add or modify content, be it game logic, textures, models, behaviour trees, sound...

#

Some work is needed on it, as per my forum post about it

#

But I fail to see how you couldn't do the same thing

#

You can even hotload mods, apparently

vale silo
#

so, is there comprehensive documentation about all that? tutorials ? (for devs - how to list mods in the game's Mod menu and load them; for end-users - how to author content mods for UE4 games)

cloud cobalt
#

it doesn't works like that

#

There is a tutorial on how to generate DLC, you have to work from there

#

Listing stuff in your menus is highly game-specific

#

Mod authoring is even more game-specific

vale silo
#

lol

#

it should be generic

cloud cobalt
#

It can't possibly be ge,eric

#

It can't possibly be ge,eric

#

How can menus be generic ? You are doing the menus in your game, not Epic

#

How can menus be generic ? You are doing the menus in your game, not Epic

vale silo
#

models/textures/sounds are all the same in any game. They are placed in Content folder, aren't they. So how is it game specific ?

#

Listing mod in the menu is generic, or should be at least

#

otherwise I saw meh to UE4 modding

#

otherwise I say meh to UE4 modding

cloud cobalt
#

How could you make a menu generic ?

#

How could you make a menu generic ?

vale silo
#

granted if they want to mod materials you'd have to create material in a specific way and show users what that is. But under the hood, it's the engine that needs to be designed to load new assets and replace existing ones

slow musk
#

does anyone know how to get Steam stats and use those for achievements?

#

does anyone know how to get Steam stats and use those for achievements?

cerulean sequoia
slow musk
#

I'd prefer BP pls. Yep I already set it up and the one-time achievements work. But I cant get the stat based achievements to work

#

there really isnt any docs for these. So sad

#

found it. apparently the ReadLeaderboard function only works in the Event graph

cloud cobalt
#

@vale silo the engine IS designed to replace any asset through a patch

#

@vale silo the engine IS designed to replace any asset through a patch

#

But there is no "the menu" in UE4. The menu is entirely up to the developer, some games don't even have one, some games do it with 3D widgets, some game use Scaleform, etc.

#

"Listing mods in the menu" is 100% outside UE4's responsibility as a game engine

#

"Listing mods in the menu" is 100% outside UE4's responsibility as a game engine

vale silo
#

@cloud cobalt how you get mod list and how you load it should be generic

#

it's not clear how to make a patch, which should also be generic

#

(for assets at least)

#

(for assets at least)

cloud cobalt
#

Patches are generic and well documented

#

Type "UE4 patching" on Google, first result

#

Type "UE4 patching" on Google, first result

#

I'm not here to defend UE4's modding capabilities, btw, I think they are lacking in documentation and support

#

I'm not here to defend UE4's modding capabilities, btw, I think they are lacking in documentation and support

#

But we should at least be serious about it, we can't criticize UE for not being idTech

#

But we should at least be serious about it, we can't criticize UE for not being idTech

vale silo
#

simply saying modding capacity and support should be simple and documented, and bringing idTech as an example because that's what I worked with in the past, a lot.

#

simply saying modding capacity and support should be simple and documented, and bringing idTech as an example because that's what I worked with in the past, a lot.

#

Nowadays there is no competition when it comes to modding capacity, so there is no immediate incentive to improve.

#

and like I said earlier, only so many games benefit from offering modding capacity

#

I am sure Epic has a better grasp of the whole picture and if they aren't offering easy modding capacity, that simply means there isn't any benefit in it

#

if you are a large AAA-indie or AAA company, you have enough in-house resources to implement modding capacity on the low-level

cloud cobalt
#

The low level side is absolutely not the issue in UE though.

vale silo
#

If you are a lone indie or tiny indie team, chances that having modding will help to sell more copies or build massive following are low

#

well, when I get to it myself and find out it's really as easy as you say it it, then I will change my mind

#

right now it doesn't look like it's easy and worth investing time into

cloud cobalt
#

Yeah and like I said, depends on your game ๐Ÿ˜‰

#

Pretty sure I spent more time talking to you than enabling mods on my game lol

cloud cobalt
#

So I found some answers by reading the fine print, @grand python

#

The most interesting part is that the "build DLC" option tells UAT to build stuff in /Plugins/<name of dlc>/Content

#

So basically what I wanted

#

If I understand well it's really easy to do

grand python
#

Oh Nice

cloud cobalt
#

Now I'm just waiting for UE to rebuild ._.

distant needle
#

I know what was wrong with my Hierarchical Instanced Static Meshes. The scale was off! Keep the scale of anything ISM-related to 1.0. Always. xD

vale silo
#

@distant needle what do you mean ?

distant needle
#

oh. I meant to post this on graphics

#

and the reason turned out to be a non-unit scale

#

of the actor

#

turned it back to 1.0 - everything's fine

#

Leszek Godlewski, Ethan Carter's programmer, just told me that ๐Ÿ˜›

vale silo
#

what if you need to change size of the instances ?

south ridge
#

I have a general question

#

Hmm

#

It might be fitting to a different chat though

#

But I have a metro network - a large set of train tracks. There are signals on it

#

The signals work based on event system, so solving signals is very fast - the signals contribute zero tick time

#

But currently each signalling light is located in persistent level, while all actual visuals are in streamed levels

#

So outside of the levels, there's a large amount of floating signals

#

Should I change something about this?

#

Should I maybe separate the visual part of the signal & the logic part (so visual part is inside the level or something)? Though that would be pretty inconvenient

#

Do the actors floating outside of the level (when they are not inside the streamed chunk) contribute any considerable cost to stuff like occlusion culling etc

#

Should I possibly make them invisible when they are not in a loaded level

hollow dune
#

When you rebuild a project which uses a source built engine, does it rebuild the whole bloody engine?

cerulean sequoia
#

@south ridge, how many signals are we talking here, I would say just throw some very low detail LODs on them and you're fine

south ridge
#

We're talking like a thousand

#

I can render them all in one frame at ease, it's just raw object count I'm worried about

cerulean sequoia
#

not sure how you handle gamestate and all that, but since they are event driven (no tick time), and I don't know if they have to store values. I would honestly just keep them in the persistent and give them LOD2 that has 1 tris or something

frozen magnet
#

@hollow dune if you rebuild the solution it does, if you just rebuild the project it will take longer than with non-source built engine, but not as long as recompiling the whole engine i think

hollow dune
#

@frozen magnet Is there anything else I should be concerned with in regards to a source built engine? I do a build and despite I can see there are syntax errors, it's not identifying them and stating they are fine

frozen magnet
#

is it causing it to fail to compile? which branch are you building?/

hollow dune
#

I forked 4.13.0

#

the main one

#

Its not giving me a failure but I can see there are errors

#

the compiler just isn't complaining for some reason

#

which means I cant open the project because it fails to rebuild the .dll

frozen magnet
#

main one as in release or master?

hollow dune
#

master sorry

frozen magnet
#

readme says master may not compile at any given time

#

try release

hollow dune
#

ok, dammit

#

I don't even know if its worth it, the dam SQL support files it has look the dame same as this plugins, same name particularly gets me and the plugin won't run on droid

#

man UE4 should really work on mobile support, this is awful

agile wadi
#

When I unload a streamed level, a few actors are being left behind. How can I make sure my actors are going to be removed when my streamed level is unloaded?

hollow dune
#

@agile wadi are the actors instantiated within the level that is unloaded?

agile wadi
#

They're instantiated by other actors in that level.

hollow dune
#

Im sure it will only unload the actors which are instantiated by that level

agile wadi
#

As in actors that are actually in the level before runtime?

#

In that case I guess OnDestroy on those actors will need to cull anything they spawn.

hollow dune
#

If you want to have a level that streams unload actors automatically you'll have to instantiate them through the level, if they're not the system will require you to manually remove them

agile wadi
#

Right, cheers Null.

hollow dune
#

All depends on how you build your system matey

south ridge
#

@cerulean sequoia the signalling actors store some state related to signalling logic which AI trains read

#

(simply put, they store whether signal lights are lit or no)

#

So yeah, I'll just either make them invisible or give them a single triangle LOD so they are invisible in case an unthinkable happens and player manages to get a peek outside the level

cerulean sequoia
#

bonus points for making a really low poly middle finger

white gorge
#

Does anyone know how to get 3dsmax 2016 to let me zoom on a imported image, zoom lock and pan in the viewprot config doesnt seem to want to play ball but ive looked at mulitple sources that say it should work...

cerulean sequoia
#

makes it all the more weird should the player peek outside

robust garnet
#

hey guys, does anyone know how to possess a pre-placed character inside my level instead of spawning at the level start? Its always the default in the templates

marble lynx
#

If you click on the character

#

type in possess in the details panel, there is an option to set a player to automatically possessi them on start and you just select which player to possess them

robust garnet
#

ahhh found it. Strange, I was sure I searched for that last night, anyways thx!

agile wadi
#

@robust garnet Another option is drag a reference to the actor placed in the level into the level blueprint and use player controller's posses node to posses that actor. Gives you a bit more control than the standard auto-posses.

robust garnet
#

yeah that would be my second idea

agile wadi
#

Does the Destroyed event not fire when a level unloads an actor? ๐Ÿ˜•

ashen brook
#

probably not

#

you could use Event End Play for that

#

I think

agile wadi
#

It doesn't seem to. Cheers will take a look.

ashen brook
#

not sure that will fire properly though. Worth a shot ๐Ÿ˜ƒ

agile wadi
#

Yep that works. Cheers @ashen brook

hollow dune
#
void CopyAllAssetsToExternal(FString inDirectory)
{
#if PLATFORM_ANDROID
    // only do this on Android
    extern FString GExternalFilePath;
    FString DirectoryPath = FPaths::GameContentDir() / inDirectory;
    IFileManager* FileManager = &IFileManager::Get();

    // iterate over all the files in provided directory
    TArray<FString> directoriesToIgnoreAndNotRecurse;
    FLocalTimestampDirectoryVisitor Visitor(FPlatformFileManager::Get().GetPlatformFile(), directoriesToIgnoreAndNotRecurse, directoriesToIgnoreAndNotRecurse, false);
    FileManager->IterateDirectory(*DirectoryPath, Visitor);

    for (TMap<FString, FDateTime>::TIterator TimestampIt(Visitor.FileTimes); TimestampIt; ++TimestampIt)
    {
        // read the file contents and write it if successful to external path
        TArray<uint8> MemFile;
        const FString SourceFilename = TimestampIt.Key();
        if (FFileHelper::LoadFileToArray(MemFile, *SourceFilename, 0))
        {
            FString DestFilename = GExternalFilePath / FPaths::GetCleanFilename(*SourceFilename);
            FFileHelper::SaveArrayToFile(MemFile, *DestFilename);
        }
    }
#endif
}```
#

Does anyone know why he saves his timestamps?

feral dirge
#

Most likely for the log

hollow dune
#

Thank you

#

@feral dirge Hey can I bug you again matey

feral dirge
#

Kinda

#

what's up?

hollow dune
#

FString DirectoryPath = FPaths::GameContentDir() / inDirectory;

#

this line is strange

feral dirge
#

Why?

hollow dune
#

is it automatic concat?

#

of the FString

#

Since GameContentDir returns a FString

#

without an ending /

#

It looks like it's automatically doing it

feral dirge
#

Nah think about it

hollow dune
#

usually I would have to use FStrings overloaded operators

feral dirge
#

In your project

#

you have Project Name > Content

#

It is a string yeah, but it's building a string

hollow dune
#

I never knew you could build them like that before

feral dirge
#

Perhaps I'm wrong

#

but that's how I'm looking at it

agile wadi
#
     * Concatenate this path with given path ensuring the / character is used between them
     *
     * @param Lhs Path to concatenate onto.
     * @param Rhs Path to concatenate.
     * @return new FString of the path
     */
    FORCEINLINE friend FString operator/(const FString& Lhs, const TCHAR* Rhs)
    {
        checkSlow(Rhs);

        int32 StrLength = FCString::Strlen(Rhs);

        FString Result(Lhs, StrLength + 1);
        Result.PathAppend(Rhs, StrLength);
        return Result;
    }```
#

For the curious.

#

from FString

#

I was wondering what an earth / was.

ashen brook
#

// This is a single line comment.

#

/* This is a comment block that can b e multiple lines long */

foggy valley
#

don't forget

/// Super dark comment

#

that's an operator override btw

#

the /

#

you make an operator handler that says "if we're trying to divide FString A by Fstring B return Concat(A, "/", B)"

#

slate is full of this stuff

#

makes sense with paths though, that's a fun usage

polar hawk
#

No guys

#

Its doing string a divided by b

#

Cow / milk = gallons

foggy valley
#

r u sure

polar hawk
#

Owner of a loney heart / roundabout

hollow dune
#
    FString j = "Content/Databases/ML_DB.db";
    FString k = "/Databases/ML_DB.db";
    FString l = "Databases/ML_DB.db";
    FString m = "/ML_DB.db";
    FString n = "ML_DB.db";

    if(sqlite3_open(TCHAR_TO_ANSI(*i), &db) == SQLITE_OK) { UE_LOG(LogTemp, Warning, TEXT("#!!# [1]  #!!#")) }
    if(sqlite3_open(TCHAR_TO_ANSI(*j), &db) == SQLITE_OK) { UE_LOG(LogTemp, Warning, TEXT("#!!# [2]  #!!#")) }
    if(sqlite3_open(TCHAR_TO_ANSI(*k), &db) == SQLITE_OK) { UE_LOG(LogTemp, Warning, TEXT("#!!# [3]  #!!#")) }
    if(sqlite3_open(TCHAR_TO_ANSI(*l), &db) == SQLITE_OK) { UE_LOG(LogTemp, Warning, TEXT("#!!# [4]  #!!#")) }
    if(sqlite3_open(TCHAR_TO_ANSI(*m), &db) == SQLITE_OK) {  UE_LOG(LogTemp, Warning, TEXT("#!!# [5]  #!!#")) }
    if(sqlite3_open(TCHAR_TO_ANSI(*n), &db) == SQLITE_OK) { UE_LOG(LogTemp, Warning, TEXT("#!!# [6]  #!!#")) }```
#

desperate times

#

desperate measures

#

@foggy valley have you worked with android or sql before?

foggy valley
#

SQL yes

#

android no

#

not sqlite though

hollow dune
#

crap

foggy valley
#

I would like to discuss the state of moving and deleting assets in the editor and why it relies on RNG

fiery harbor
#

rng?

flat zodiac
#

random number generator

#

very popular term in gaming

foggy valley
#

0 for success, 1-10000 for failure

#

if even number, restore deleted or moved folder

#

just kidding, it happens way more often than that

agile wadi
#

0 for success 1-10 for failing to fix redirectors correctly.

foggy valley
#

pretty much

#

it's ridiculous

#

stay deleted you fuckers

#

don't make me visit you in explorer

fiery harbor
#

you talk about the folders? that are not redirectors

#

its a bug that was fixed in 4.14

crude flame
#

Guys, I'm in need of some help. I just recently set up my new computer and am trying to download the launcher, but the download keeps looping like it goes to 10% and then back down to 6% and then back up again...anybody run into something similar?

floral pagoda
#

@crude flame - Hmmm - I do not think that I have ever encoutered such an issue

crude flame
#

hmm..it;ss extremely frustrating...

floral pagoda
#

@crude flame - I bet. Did you install all your windows updates yet?

#

Just curious

#

Like all service packs

#

Unless you use OSX

#

Then GG

#

I cannot help you sadly

crude flame
#

I think I have a couple windows updates pending..im on windows 10

floral pagoda
#

@crude flame - Try and download those

crude flame
#

this OS has been nothing short of a nightmare so far

floral pagoda
#

I bet

#

I personally need to reinstall windows 10

#

Soo yeah

#

Not looking forward to it

#

:\

crude flame
#

the automatic updates is annoying, these updates have even given me a bluescreen a few times

floral pagoda
#

Yeah I know that feeling

#

I get them too sometimes

crude flame
#

computer troubles and car troubles are the worst..makes ur life miserable lol

floral pagoda
#

Totally

cloud cobalt
#

So I almost succeeded in having mod support in my game ! Just need to understand why mods don't load now ๐Ÿ˜ฆ

#

For those interested I have a series of questions about modding here : https://forums.unrealengine.com/showthread.php?123419-How-can-I-release-a-modding-SDK-for-my-game

floral pagoda
#

@cloud cobalt - Did you get a reply from epic?

#

Oh wait that is yesterday

#

derp

cloud cobalt
#

Didn't get a reply, @floral pagoda

floral pagoda
#

:\

cloud cobalt
#

But it's not like I'm in a hurry

floral pagoda
#

ok

cloud cobalt
#

Not sure why the mod doesn't load though, that's probably an issue on my part

floral pagoda
#

The world may never know ยฏ_(ใƒ„)_/ยฏ

cloud cobalt
#

It will, when I get it to load

#

I mean the mod file looks OK

#

The game just forgot to load it ยฏ_(ใƒ„)_/ยฏ

#

The main issue is the near-complete lack of documentation, online discussions or tutorials

#

Sometimes it feels like no one has ever shipped a UE4 game, because you always find entry-level documentation, and precious little data on releasing, patching, etc

tawny veldt
cerulean sequoia
#

see if it compiles for higher versions

#

according to your website the source code is included

kindred viper
#

@tawny veldt : I would probably pay an expert... which would be me :p

tawny veldt
#

Indeed it is included, @cerulean sequoia , didn't realise ๐Ÿ˜ƒ

eager blade
#

@tawny veldt There's also "Logitech Gaming SDKs" for free on the marketplace. It also contains support for Logitech's steering wheels.

tawny veldt
#

Waaaat

#

I'll check it out ๐Ÿ˜ƒ

eager blade
#

It looks like it's more up to date and has more features.

kindred viper
#

the TSky plugin for SDL works with anything. I would use that because you can rebind stuff anyway you like with it

eager blade
#

I haven't used it yet though, it was missing all documentation last time I looked at it (a long time ago).

tawny veldt
#

Hmmm

kindred viper
eager blade
#

No force feedback in that plugin.

tawny veldt
#

Well, I have nearly no coding experience, other than what is inside UE with blueprints, so this'll be fun

eager blade
#

If you don't need force feedback that UEJoystickPlugin might be good enough. Otherwise you're pretty much going to have to use Logitech's plugin.

tawny veldt
#

I'll play around with both and get back to you if I get it working ๐Ÿ˜ƒ

#

thanks for the insight

tawny veldt
#

OK, I'm having some trouble understanding their instructions >.<

#

@eager blade if I sent you the documentation, would you be able to help me a little further? ๐Ÿ˜ƒ

eager blade
#

Maybe, but I don't have much time right now since I am at work.

#

Which plugin are you using?

tawny veldt
#

Trying out the SDK first

#

I did stuff up until the Fmodulemanager part, because it doesn't really say where I should add these lines

#

Also it shows up in the editor, but I don't really see any documentation on what the plugin can do xD

eager blade
#

Sorry, my boss just assigned me to something so I'll have to take at look at this when I get home.

tawny veldt
#

Damn bosses ๐Ÿ˜„ haha enjoy and thanks for the help anyway :p

cursive dirge
#

@tawny veldt logitech SDK on marketplace is pretty much same thing as that old plugin that's around, with one key difference

#

it doesn't have any ue4 input mapping / bp support

#

so it's only usable from c++ directly as is

tawny veldt
#

I read that earlier, and tried the joystick plugin instead

#

and actually just got it working and showing up in the editor

#

But I'm having a new annoying issue >.>

cursive dirge
#

also

#
#

that's a better version of that 4.7 plugin

#

I've used these all on my g25

tawny veldt
#

Hmmm..

cursive dirge
#

currently just using the marketplace version but I've fixed it a bit

#

you get the source code with it too

tawny veldt
#

So I should maybe try this one you linked

cursive dirge
#

so you can manually keep it up with engine builds

#

basically since the implementations are so similar

tawny veldt
#

the joystick plugin I just tried shows all the inputs, but they don't change when I do anything with the wheel

cursive dirge
#

you could even take the marketplace plugin and merge the changes on that old plugin

#

they use same sdk after all

tawny veldt
cursive dirge
#

yup, you won't get those with the marketplace asset alone

#

but it's just a wrapper

#

(that input mapipng thing)

#

you could also use the SDL based joystick plugin if you want

#

but you won't get as nice prebuild FFB things with it

tawny veldt
#

That's the one I'm using

cursive dirge
#

in fact, I'm not sure if it properly supports FFB even

#

does it do FFB?

tawny veldt
#

FFB, is that force?

cursive dirge
#

I know SDL itself implements that some way

#

yes, force feedback

tawny veldt
#

It doesnt

#

That's what I read anyway

cursive dirge
#

with logictech SDK you just give commands with functions that are selfexplanotary

#

it couldn't be much easier

#

(for forces)

tawny veldt
#

Let's say I downloaded the one you linked me

cursive dirge
#

it probably won't compile on 4.13 ๐Ÿ˜„

tawny veldt
#

.<

cursive dirge
#

there's just been so many changes on c++ api

tawny veldt
#

4.12 can do too

cursive dirge
#

I think I've last used that on 4.9 myself

#

but I always update the api changes on my project so it's easier to maintain

#

this is the downside of not having proper joystick support built-in to ue4

#

someone still needs to keep the 3rd party plugins up-to-date

#

so you basically need to know some basic c++ stuff for it

tawny veldt
#

Ok, then instead, let's say I just kept using this joystick plugin

#

would you know what I could do to make it actually grab these values properly? Because when I do a print string with any of these buttons, they never change

cursive dirge
#

does any other input work?

#

on that same actor

#

like have you enabled the input for it

#

also possible that some plugins don't support hotreplugging controllers

#

so you could try to start the ue4 editor only after you've connected your wheel

#

I haven't used the SDL version of that joystick plugin

#

I initially tested the directinput version before someone ported it to sdl

humble lark
#

Does anyone here know if it's possible to use the foliage tool inside a blueprint?

grand python
#

?

#

What do you want to do?

humble lark
#

I'm making an infinite runner type of game, and I'm spawing chunks of landscape. And I would like some trees on those chunks which are blueprints.

grand python
#

uh i guess you have to place them via blueprint

#

with random yaw and so on

humble lark
#

What do you mean via blueprint? Like the foliage blueprint?

grand python
#

no. as actors

#

trees and stones

tawny veldt
#

@cursive dirge I have just opened up a vehicle template project, and their inputs work fine, and I'm just adding the new ones in the same blueprint they're using. I have only started UE4 after the steering wheel was connected

grand python
#

You could try adding the trees on the cunks and then save those chunks with the trees on it as a BP

#

and then spawn those BPs in your runner BP

#

like you do with the landscapes

humble lark
#

@grand python Adding the trees on the chunks in the level editor?

grand python
#

yep

#

then save that as a own BP

cursive dirge
#

@tawny veldt yeah, I dunno, I'd check the plugins docs first

#

like how it should be setup

#

there could be some init somewhere

humble lark
#

I can't seem to find the instance of the foliage that was generated with the tool

tawny veldt
#

It only tells you how to install it, and then says.. "Now you can map Inputs to Joystick devices in Project Settings. (Engine->Input)"

grand python
#

hm. Sorry cant help you with that then. i'm just a beginner too :P

humble lark
#

@grand python Ah, well thanks for the help so far... I even tried making the trees in blender, but now I'm having so many problems with light UV mapping

grand python
#

Yea best is to add them manually like you added the landscapes

tawny veldt
#

@cursive dirge I'm starting to think maybe the solution is to just see if I can somehow get the plugin you linked to work >.>

grand python
#

hm.. i'm thinking of a way that works with raycasts. and places trees on the hit points

humble lark
#

That's pretty much impractical since I need lots and lots of foliage

#

It can't be any type of blueprint spawning. That would kill the performance ๐Ÿ˜ฆ

#

Aside from the chunk spawning that is. They need to be complete as a whole for it to be playable on a mobile I think

tawny veldt
#

@cursive dirge Okay, I think I figured it out. 4.13 doesn't like the plugin, but 4.12 is fine ๐Ÿ˜„ Except, it tries to normalize the values to -1 and 1, but they still jump around to -4 and 4 while turning the wheels

cursive dirge
#

ah

#

I'd check the warning on 4.13

#

they may give hints why it doesn't work properly there

cerulean sequoia
#

@tawny veldt you could just clamp the values to -1 +1 so that those spikes don't matter anymore xP

tawny veldt
#

@cerulean sequoia <3 I'll try that first thing tomorrow :D

tough kayak
#

Anyone know how I can change everything in my project to UV source channel 1 instead of 0

#

A bunch of the objects I imported have bad uv mapping and some of them keep going back to chanel 0

limpid phoenix
#

So can you not make a spawnable level sequence that is in local space? I can't seem to find anything about this kind of usage

safe rose
#

@tough kayak go into the mesh editor and change it

tough kayak
#

Victor!

#

Thanks, I'll give it a go tomorrow at the office

safe rose
#

np

cursive dirge
#

@tough kayak you can also pick the UV source on "TextureCoordinate" node on individual materials

#

not a project wide setting though

plush yew
#

Anybody knows if theres a way to get the scale for each instance from instnaced static mesh

#

in the material editor?

#

?

cerulean sequoia
#

@tough kayak you can probably save you some time and change those uv channels via the property matrix, could be exposed there

hollow dune
feral dirge
#

@plush yew Can cheat it

#

with a 3 Param

#

and when you create it, get the scale then pump it into the param

feral dirge
#
LogWindows:Error: === Critical error: ===
LogWindows:Error: 
LogWindows:Error: Fatal error!
LogWindows:Error: 
LogWindows:Error: Unhandled Exception: 0xc06d007f```
#

Damn it, what do ๐Ÿ˜ฆ

plush yew
#

When does the fatal error happen, what is the editor doing the moments before?

#

@feral dirge

feral dirge
#

Trying to fire up Steam, having fun trying to debug it

#

I wish they wouldn't change core engine features like the OnlineSubsystem without updating the docs

#

That just makes me sad ๐Ÿ˜ฆ

plush yew
#

Yeah, I've never understood the habit they have at epic of updating core features and updating documents months later.
Why not release the update some weeks later then planned if it would give them enough time to write and post docs

fossil socket
#

also you'll learn very quickly that the steam online subsystem implementation sucks

#

and for some reason you can't use the ipnetdrv with it? i haven't found a way that works, right now we're using the steam net driver which uses steam's p2p networking lib and you can't join servers by direct IP

feral dirge
#

Yeah but that's easy to get around

#

You can use a Master Server and an alt subsystem and all that shit

crude flame
#

Day3: Managed to get the launcher to Update. Now for some reason, can't downlaod the engine...yay

fossil socket
#

probably faster to download from github and compile the engine yourself

upbeat fern
#

is there any alternative to swarm?

foggy valley
#

the plugin I'm working on does lightmass baking using the GPU and can do it across a network

#

not UE lightmass though, it all ends up in a parameter in the material

#

writing to the actual level lightmaps is in the future

candid smelt
#

if i was buying/building a new PC for UE4 dev, am i better off looking at a faster quad core processor, or a "slower" hexcore or above? for example, a 6700K vs 6800K?

foggy valley
#

go haswell, get 12 threads

#

I have found it to be real good

#

in general 8 threads is a bit limiting and 12 is fine

candid smelt
#

i'm finding that at the moment, i'm running a i7-4770 with 16gb ram, ram isn't getting smashed too hard, but the processor is struggling a bit

#

the editor scales nicely with more cores tho?

upbeat fern
#

@candid smelt seems fine on a i7-4930k not sure on the spec diff.

#

I do have 32gb ddr3 though

#

at home 6600k, smooth as butter.

#

w/ 16gb ddr4

plush yew
#

Hi there. I'm using the Profiler for the first time to optimize my project. How can I identify the big bugbears? Is it just the "Inc Time" in ms? Is this the correct spot to ask this question?

kindred viper
#

I just usually follow the chain of the highest milliseconds, follow the red, identify the trouble function or line and go from there. It's all a bit of a mystery except for a few key parts. Kind of a specialised deal.

hybrid scroll
#

Does anyone have some experience with running a alpha / beta? More specifically, gathering data from test players?

fossil socket
#

yes, but we made a server side stats backend (multiplayer game)

hybrid scroll
#

Well, this is something I want to do, but I have a single player game. I wanted to record how much time / retries it takes for people to complete each level.

fossil socket
#

our game servers just send a JSON payload with the stuff we want to record

#

and that gets recorded to a database

hybrid scroll
#

Are there any plugins for something like this? I could probably write it, but I don't think if would be an efficient use of my time.

dark pike
#

I was just wondering if somone can help me out with a modelling problem?

foggy valley
#

sure, what's up?

cursive dirge
#

you could also try #graphics for model specific issues ๐Ÿ˜ƒ

fossil socket
#

why do you need a plugin to send some JSON over HTTP?

#

it's simple

cursive dirge
#

but yeah, usually it's just better to ask the actual question on right channel instead of trying to find a single person to help you

fossil socket
#

the engine has stuff for JSON serialisation and sending HTTP requests

foggy valley
#

he might mean like, supermodels

#

which I am all about

#

or she

#

let's be real here

#

oh, don't PM me

#

0lento is right, ask your question here

dark pike
#

Oh.

#

Okay.

cursive dirge
#

that's what happens when you offer up ๐Ÿ˜ƒ

#

yeah

#

it's better to ask here unless you are under some sort of NDA

dark pike
#

So, im just having a problem with concepts.
I want to make a giant-ass cave. I dont know how i should do it.

foggy valley
#

haha I guess

cursive dirge
#

that way more people can help you

foggy valley
#

I'd take a giant ass dirt and make a giant ass hole in it

dark pike
#

XD

cursive dirge
#

the person you ask directly may not always know the answer

#

or.. you get more suggestions

foggy valley
#

in all seriousness, metaballs and booleans

cursive dirge
#

antidamage is smart though ;D

#

@dark pike concept art of some level prototype?

foggy valley
#

antidamage is handsome too, are you sure you aren't a supermodel looking for advice on what tiny scrap of clothing to wear?

#

man I'm just noticing that all my advice comes with sexual harassment

dark pike
#

My concept art looks like crap lol

foggy valley
#

well try to stick to it, you wanted your cave to be giant ass

dark pike
#

I see what you did there

foggy valley
#

so what are you modelling in?

dark pike
#

Blender.

cursive dirge
#

why you want concept art?

#

like you want to become concept artist?

foggy valley
#

I don;'t know blender at all

#

naw he wants to model one

#

he's having trouble with modelling concepts

#

the concepts of modelling

cursive dirge
#

well, people still use real 3D models as part of concept art too

#

oh

#

well

#

step one

#

google for image references

#

find something that looks like what you want to do

#

to get the feel of the scale and shapes

foggy valley
#

yeah I'd make a subdivided tube and distort the crap out of it

#

then add in ledges and shit

#

caves are unforgiving, there is no consistent scale to a cave

cursive dirge
#

if you don't know what it should look like, it'll not look good

#

well, details still should have some believable scale

#

unless it's some low poly or artsy kinda environment

dark pike
#

No.

#

I just... dont know if i should do it in parts then glue it together. Or do it in one big heap.

#

I tried foing one big heap, but then it got really irritating.

cursive dirge
#

that one is really modular

#

I'd do all the details as separate meshes too

#

you could do the walls as bigger chunks if you want

#

if it's one off kinda thing

dark pike
#

okay

dark pike
#

Im just curious on how you do the main walls.

#

But, thanks

#

I think i have the idea

cursive dirge
#

well, simplest wall is just a plane you flat subdivide, curve it a bit and add noise to it

#

that takes like two minutes in modo, you'd think blender can do those things too

#

that'll not be modular though, but you get the idea

cursive dirge
#

hmmmm

#

I'm looking at unreal c++ api docs

#

I was going to write a post on the forums about it

#

I took a peek on unity's camera docs

#

and unreals

#

for example, "GetCameraView" on that page has description "End of UObject interface."

#

like, what?

#

also 1/3 of listed items don't have any description

#

only the most obvious ones have been explained

#

or, well, I guess those rest are pretty obvious to most too

#

besides ResetProxyMeshTransform and RestoreFrustumColor :p

cloud cobalt
#

Unreal has a big documentation issue

cursive dirge
#

yeah

#

I've talked with Lauren about c++ api docs, she wanted me to point out some inidivdual places where the docs were bad

#

but it's not just individual place, it's basically the whole c++ api doc

#

most of the other docs are fine

cloud cobalt
#

On some level it's understandable, it's hard to define when a class is an internal or public-facing

#

But the camera component -_-

cursive dirge
#

also, they list some new things as DEPRECATED

#

not on that class

#

that's mainly some scripting issue when they parse these things

#

but the bottom line is, that these descriptions are not consistent

#

if you look the main level description

cloud cobalt
#

OnComponentDestroyed
Called when a component is destroyed

cursive dirge
#

and then open the function etc

cloud cobalt
#

^ oO u dont say

cursive dirge
#

it can have totally different text

#

heh

#

that's my favourite example when I describe why the api docs are bad

#

they usually just point out the obvious

#

at least on things that are not really basic

#

that camera component is bit bad example about it

#

as it's still better documented than most o the things I've seen

#

I also lol'd a bit at this page

#

description: "Copyright 1998-2016 Epic Games, Inc. All Rights Reserved."

#

on half of the items

cloud cobalt
#

The latest thing I started in UE is modding support, and it's amazing how there is close to zero documentation & support.

cursive dirge
#

well, have you checked docs how unreal implements physics or multiplayer prediction?

#

they only tell the higher level things on generic docs

cloud cobalt
#

Multiplayer was extremely well documented on UDK, so that's surprising

cursive dirge
#

I haven't seen a single page on official docs that tell that only character class has multiplayer prediction built in

#

and no page describing how the prediction even works

cloud cobalt
#

Physics are done by third-party code so it's less shocking, plus Unreal generally sucks at physics (physics-based game dev here)

cursive dirge
#

oh

#

I mainly meant, there's no docs that describe how unreal implements the physx integration

#

most of the ue4 devs I've talked with don't even know physics get calculated by default once per tick

#

nor understand why it's bad

#

on unreal that is

#

Unity actually ticks physics at fixed steps

#

with same physics engine

#

there's also hidden functionality on physics side, like ability to run custom physics code on substeps which isn't documented anywhere

#

substepping itself is mentioned on few pages though

cloud cobalt
#

UE has substepping support though

cursive dirge
#

yeah, but even that is still tied to framerates

#

it just adds extra physics steps if frame rates go low

#

the whole logic how it calculates it is also usually hard to explain, due to the way it's implemented

#

there are lots of conditions

#

btw

#

there used to be a good doc page how unreals character networking code worked

#

it was on the old site

#

many webpages actually link to it

#

but it doesn't exist anymore

cloud cobalt
#

Yeah I know that page

#

Anyway, my general takeway is that UE4 is the best engine for large-scale games with classic technology

#

Like doing a shooter

#

Or a race game or...

cursive dirge
#

well, racing game is hard

#

as it involves physics ๐Ÿ˜„

#

and that's pretty messed up on unreal

cloud cobalt
#

Yeah but you can get away with it I think, it's not like realism is super essential in most race sims

cursive dirge
#

if you do like single / local co-op game, it's ok

foggy valley
#

it's a game framework. you can use as much or as little of it as you like

#

you can treat it like a graphics engine if you want

cursive dirge
#

as you don't have to run the same simulation on other computers

#

@foggy valley that's pretty much what I do atm

foggy valley
#

there you go then ๐Ÿ˜„

cursive dirge
#

I replace unreals input system, physics calculations etc ๐Ÿ˜„

cloud cobalt
#

UE starts to fail when you want to do something really out of the box

#

Because it's very much a rigid, monolithic system

cursive dirge
#

I really wish they didn't hardcode some of the stuff in the engine

#

the input thing kinda pisses me off tbh

#

for example

foggy valley
#

I want to say that it's not that monolithic

cursive dirge
#

by design

foggy valley
#

but I guess it is

#

input thing?

cursive dirge
#

you can't do local splitscreen that would use keyboard + gamepad

#

as unreal hardcodes that keyboard and first controller is always player 1

foggy valley
#

a non-monolithic game engine would be incredibly hard to debug

#

ah I see

#

yeah that's crap

cursive dirge
#

you need to have two controllers to do local splitscreen

cloud cobalt
#

The rendering pipeline is definitely an immovable, giant unhackable rock, and at some point it can be an issue

cursive dirge
#

also

foggy valley
#

fix it and make a pull request? ๐Ÿ˜„

cursive dirge
#

builtin input system doesn't support anything but xinput and steam controller

foggy valley
#

the RHI is getting heavily modified soon

cursive dirge
#

so if you have directinput device

cloud cobalt
#

You can't fix the architecture :/

foggy valley
#

it won't be so bad then

cursive dirge
#

like steering wheel, flight stick etc

#

you have to use 3rd party plugin

#

and then you'll get all kinda of mapping issues with the splitscreen thing to

#

I just replaced the whole thing myself

cloud cobalt
#

@foggy valley One piece of example is how you can't exclude objects from AA in the scene

cursive dirge
#

also

#

splitscreen is also hardcoded

#

you add a player

#

you get splitscreen

#

local player that is

#

you don't have much control over the viewports

#

3 player splitscreen is forced to have one bigger view and 2 smaller ones

#

you can't like split the screen in 3

foggy valley
#

I don't know enough about deferred rendering in UE to know if the AA is unreasonable or not

#

but I would like to see MSAA

cursive dirge
#

MSAA works on 4.14 and forward

cloud cobalt
#

@cursive dirge You can probably use your own viewport subclass

cursive dirge
#

I've used it

foggy valley
#

hmm yeah this all sounds like shit

#

let's switch to unity and spend ten years writing the features we wanted from unreal ๐Ÿ˜‰

#

it's a trade-off

cursive dirge
#

@cloud cobalt sure you can mod the engine

cloud cobalt
#

@foggy valley MSAA is only on forward, isn't it ?

foggy valley
#

I think so

cursive dirge
#

I had to mod the viewport class to re-enable bloom on splitscreen

cloud cobalt
#

@cursive dirge Can't you subclass the viewport from your game code ?