#dev-general
1 messages · Page 110 of 1
Also, is there any benefit of choosing ubuntu over cent?
CentOS is basically Red Hat Enterprise Linux without the amazing support team
ah
Most tutorials target that
Can I change roots password through ssh?
Since it's most widely used
CentOS has more built-in repos though
passwd @obtuse gale
ELrepo and EPEL are very, very large repos
Built in repos make practically no difference
suppose they technically aren't built-in lol
webmin + lamp good ?
lemp > lamp
nginx?
Apache bad
lol
I recommend caddy personally
so much easier to configure, handles SSL cert installation for you
Im not too familiar with linux so idk, lamp comes preinstalled if needed
Anything that isn't Apache is fine
so no lamp?
XML
@old wyvern nope
what's LAMP stand for again?
Mysql php
Linux
Apache -> Caddy
MySQL -> MariaDB
PHP -> JS
so LCMJ
test
@old wyvern digitalocean has some very good guides to setting up lemp and a server
JS is much more responsive and has many less loopholes than PHP does
configuring permissions etc
though JS isn't really a good language
Alrighty ill check em out
Both PHP and JS can be fine
Js -> kotlin
yeah idk how good Kotlin/JS is

MariaDB over MySQL any day though
actually, CCMP
Not necessarily
CentOS
Caddy
MariaDB
PHP
I would need that for JS backend right?
Yes
every time I think node I think npm, and that reminds me of the is-promise thing
Whats that
what's what?
That is a word, but that's not important right now,
1 line packages
@prisma wave
npm packages that are literally 1 line long
there's 1 to check if strings are empty iirc
and it's literally return s && s.length != 0
or there's a package to check some regex but the package is like 4x the size of the actual regex
literally one change to is-promise broke firebase-tools, angular cli, aws serveless cli, create react app and a load of npm packages
anyone know how I can generate some sort of application file that I can port to my server from this project?
wdym?
like a JAR or some sort of BIN file idk
actually yeah it'd need to be a JAR since it takes system properties
with gradle*
is it shadowJar or something like that?
does it matter if im making a recursive call? only asking as IJ as highlighted it with a symbol
👍
Recursion isnt Inherently bad, it just can be
quite
be very careful to not run in to an infinite loop though
indeed
to avoid infinite loops you can use lazy {} I think
IJ wont run inf loops pretty sure.
yeah
it'll just get to the point where it gets fed up and throws an error to say "hey can you please stop making me repeat the same action over an over again?"
eventually the jvm will throw a StackOverflowError
^^^^
lol
I've accidentally done that before a few times
We all have
^^^^
anyway, about my JAR, I just need a JAR file that has everything I'm depending on in it
shadowJar is what you want then
okay
Will include every implementation or compile dependency but not compileOnly
what's the difference between implementation and compile by the way?
also, anyone got a good shadowJar configuration or do I not need one
Implementation also hides the dependency when used transitively
can I just use apply plugin
It's not that hard to setup
okay
Never
bro
Theres a million ways i couldve done this better
every one
wait why's it downloading ant?
always
I have 3 projects they are the same project but i did it 3 times for whatever reason
transitive perhaps
what's ant got to do with gradle?
idk
Just finish the project, dont make it better until after its done.
In theory nothing
I've never seen it download ant before
Maybe some dependency needs it for some reason
where does it output the JAR to?
wait do I need to run a certain gradle task like I do with maven's package or is build supposed to do it?
probably the shadowJar task
okay I ran that and it came out in build/libs as BardyBot-1.0-all.jar
what does the all in that mean?
It's the shaded jar
You can also make it so it compiles shadow by default.
with dependencies included
can I make it come out as @projectname@-@version@?
yes
You can, part of the shadow jar settings in gradle
the docs are the same ones that still use apply plugin (and also have the plugins block nvm)
Also, blossom is really nice as well if you need info from your gradle in your project as well
I specificy versions in gradle and they show up in my main project as well, really nice.
Kyori project iirc
baseName is deprecated
in favour of getArchiveBaseName or something apparently
archiveFileName.set("${project.name}.jar") that's with the kotlin DSL but is probably very similar in groovy
I think I am using Kotlin's DSL
build.gradle.kts?
haven't found anything that's different yet
lol
forgot i changed my server ip
right now time to rsync that file over to my server behind me
hopefully it connects to the internet just fine
ah crap I think I gotta set it up again
ah okay
for some reason CentOS doesn't like my WiFi dongle so I have to use a WiFi repeater with an ethernet cable
rip
and the WiFi repeater breaks every time it's unplugged
it disconnects from the network
wifi drivers on linux are a wonderful thing
yeah
even though the driver for my dongle is literally built-in to the kernel, and it didn't require any setup on Arch (even though this is running 5.6 and CentOS 8 runs 4.18 I think I'd still expect it to just work)
but it just doesn't connect
actually no that's a lie
it doesn't appear on the list
well, I suppose this thing is a Dell Optiplex computer
so old USB 3.0 didn't even exist back then
cost me £40 on Ebay
you get what you pay for I suppose
I should just rent a dedi
Oh did you buy one of those refurb dell pcs?
yeah
I was thinking about that, cheap and alright specs
yeah it's not too bad for what I paid for it
it has a pentium, 4GB RAM and 320GB HDD
is it worth getting a dedi though is my question
I mean it could be useful
and I can pick one up for quite cheap from SYS
SYS has verification though so I'm not sure
SYS?
is there a way to force gradle to copy a file even if the file is in use?
public class OreGilde implements Listener {
private final HashMap<UUID, Integer> oresMined = new HashMap<>();
private final EnumSet<Material> types = EnumSet.of(Material.DIAMOND_ORE, Material.EMERALD_ORE, Material.GOLD_ORE, Material.IRON_ORE, Material.COAL_ORE);
@EventHandler
public void onBreak(BlockBreakEvent event) {
Player player = event.getPlayer();
Block block = event.getBlock();
if (player.hasPermission("Ore.Gilde")) {
if(types.contains(block.getType())){
player.sendMessage("You mined an ore and 1 was added to the ore gilde");
}
}
}
}```
What do I do to make it to perform something when the hashmap oresMined reaches 3
something like if(oresMined == 3){
}
Liskov
oresMined.get(player) == 3
those brackets make me wanna cry
and yes liskov please
Ctrl + Alt + L
Ctrl + alt + L
ø
L
Ł
🇱
Wait did they make it live or is it still feature preview?
Still feature preview
I like the icons but the top bar is .. too big
It's nice, just the red doesn't suit it imo
I don't like where everything is
that top bar is a little too far to the left for me
Might just be Matt wonky screen size
no I've seen the preview myself
and the rounded buttons just don't quite suit GitHub
in fact, the rounded everything doesn't quite suit GitHub
nah it's still rounded for me
It's the preview feature
I mean looks fine to me?
You're not using the preview
I am
It's the repository refresh
Told you
I mean that is your wonky screen size, yours is square xD
In 16:9 looks awful
4:3 bad
It's nice ;c
It was nice 20 years ago
yeah in 16:9 it looks terrible
Ultrawide is bae
who tf even uses 4:3 any more?
I do
CRT users
what are you using? some fucking tablet?
I'm assuming one of these bad boys
Oof i used to have a similar one
Got a 170C as well
@topaz bay Kinda confused about how to do abstraction for entities 🥺
Basically the entity let's say a fox needs to extend EntityFox which means it can't extend the abstract pet class
And it be awful to repeat code for all entities for all versions
Usually
composition over inheritance?
I mean, deep inheritance is a common antipattern in OOP
Child extends Person extends Human extends Entity extends Object
So all humans are objects?
Yes
Well Niall that would work if EntityFox was made by me
I already have it implement Pet, which will share the methods, but my issue are small things like setting the custom pathfinders and things like that
Have an abstract Pet that wraps an Entity then extend it passing in a instance of EntityFox?
Alright i think i have a way in mind, let me try it
Yeah i guessed it was minecraft EntityFox
also guys, little bit of promo here, BardyBot's live if you wanna give him a try
lemme just get an OAuth2 link
if you don't trust him, the source code is publicly available at https://github.com/BomBardyGamer/BardyBot
perm8 is a no no
lemme rethink the perms then
😛
he needs to be able to talk in any text channel, and join and speak in any voice channel
A small calculator that generates Discord OAuth invite links
what does it do?
Sooo BomBardy hows Privaritine (please don't hurt me) doing?
plays music
Sooo BomBardy hows Privaritine (please don't hurt me) doing?
Prevarinite
and it's doing alright
Okay so im fairly new to developing and i want to get into java and minecraft development. Could you give me some advice on where to start and what tools to use? Im really dedicated to learn and get into it.
I'd highly, highly recommend IntelliJ
Intellij & a decent java tutorial is pretty much all you need
is intellij free?
also I'd recommend learning how to use a build automation tool
any recommendations for good ones?
you want a paid one or free one?
pretty tough picking one out without good knowledge of the subject
i honestly dont mind if its paid
i think theyre better tbh
because I know one that I learned to use from Udemy, it's £9.99, and it's absolutely amazing
Stay away from youtube for good ones
Stay away from youtube for good ones
yes
i found the one from udemy
This is great
https://www.udemy.com/course/java-the-complete-java-developer-course/ this is even better
that's the one that taught me how to code
well, somewhat taught me
i do like to learn by doing, seems like the jetbrains one is a good fit for me
the community version on this page is what i need right?
I used sololearn but in retrospect it kinda sucks
its pretty tough to find the right one
indeed
but its mainly about getting a start i think
but if you have some that you really liked then id prefer to take them
hyperskill / jetbrains academy is good from what I've seen
after you learn Java, you should learn Kotlin
Can I just say Sololearn sucks ass
and I say after mainly if you haven't programmed before, and because Kotlin is heavily based from Java
https://www.jetbrains.com/academy/ guess im going with this one then
how's https://discord.com/api/oauth2/authorize?client_id=704079938101182475&permissions=3148800&scope=bot by the way?
3148800 is view channels, send messages, connect and speak
that should be good
though I doubt he'll be able to access restricted channels
People tend to give bots roles with higher permissions if they want them to have them
idk how those type of discord perms work
People tend to give bots roles with higher permissions if they want them to have them
I only had permissions 8 because it made things a lot easier
is jetbrains the same thing as hyperskill or?
plus popular bots like Rythm are 8
Yeah most bots are on 8 because its the easiest to tick and not have to deal with permissions questions
^^^^
god i forgot how shit functional programming in java is
if anyone's actually adding him, let me know what his permissions are like
What does he do?
plays music katsumag
i would literally kill for coroutines & the kotlin collections lib rn
nice @obtuse gale
which boxes to tick? 😛
I'd do 64 bit, path, open folder, and all the file types
same as above
You can leave em all blank if you want to, but probably PATH and associations
Also context menu
and the 64-bit launcher
✅
i dont use shortcuts but i put em on my desktop anyway
.-.
😂
Intellectual
is there a discord presence addon for IntelliJ?
yes
Yeah
Called the Discord plugin
Also Material theme + UI you should probably get to beautify your IDE
I just use the default darcula theme, looks fine to me
You guys are too helpful ❤️
it's all I've ever wanted to be
Ok BM, don't lie to me, how aids is this
@Command("army")
class ArmyCommand() : CommandBase() {
lateinit var plugin: ZombFields
private val inventory: Gui = Gui(plugin, InventoryType.HOPPER, "Warriors")
constructor(pl: ZombFields) {
plugin = pl
val pane: GuiItem = GuiItem(ItemBuilder(ItemStack(Material.STAINED_GLASS_PANE, 1, 1)).setName("").build())
inventory.setItem(0, pane)
inventory.setItem(1, GuiItem(ItemBuilder(ItemStack(Material.SKULL_ITEM,1, 0)).setName("Archers").build()))
inventory.setItem(2, GuiItem(ItemBuilder(ItemStack(Material.SKULL_ITEM, 1, 3)).setName("Warriors").build()) { event ->
event.isCancelled = true
})
inventory.setItem(3, GuiItem(ItemBuilder(ItemStack(Material.SKULL_ITEM, 1, 4)).setName("Bombers").build()))
inventory.setItem(4, pane)
inventory.setDefaultClickAction(GuiAction{event -> event.isCancelled = true})
}
@Default
fun defaultCommand(sender: CommandSender) {
}
}```
Constructor will only be called once
ew
wish i knew what this did
secondary constructors
KM if you can tell me how do that outside of a constructor (like pythons __init__ method) I'll do it
class ArmyCommand(val plugin: ZombFields) {
init {
blah
}
}```
smh
That property shouldnt even be lateinit
what does lateinit mean?
Its all getting changed, don't shit on it yet
late initialized
https://imgur.com/a/eBdbGvW any plugin i should disable?
It's only Initialized after 8' o'clock
don't disable any @obtuse gale
oki
Thank god you changed your picture @rotund egret
Ugh KM my IJ has the "everything-is-white-and-no-autocomplete" thing again
😈
@errant geyser https://plugins.jetbrains.com/plugin/8006-material-theme-ui is this the one you mentioned?
but use the marketplace
Yep
Settings -> Plugins -> Marketplace tab on IntelliJ
darcula
Atom one dark
Atom One Dark
isnt darcula default
MATT ily
yes it's the default dark theme
Finally someone agrees on the theme
Nothing beats Atom one dark
JetBrains mono 👀
mono best
fira isn't too bad
aah with the material theme there are still so many choices
atom one dark best theme
fira is the best font
^
no question
jb mono > fira
Don't listen to us, go through and find which one you like best. Though if it isn't Atom One Dark I will crucify you
false
Nothing beats Atom one dark
@ocean quartz Other than Material Oceanic you mean
@distant sun Nah i hate the green hue it has
Sx how do you get your ligatures thing anyway? I'm using Mono and that doesn't happen
you are ugly
I use Fira Code Medium for my editor font
I am but that's not the point here
@errant geyser ?
wdym
you just check the box to enable it
It has to be in the font though
alright think i got it setup now, thanks guys ❤️

I dont think mono has font ligatures
also, JetBrains mono looks horrible
it does
it's way too compressed for me
Anyways, Fira Code it's better 🙂
Sx where's the box?
@obtuse gale Don't forget the best IJ plugin https://plugins.jetbrains.com/plugin/8575-nyan-progress-bar
too tall and too skinny
On the same page you choose the font
I write code in wingdings
haha wth
It's great trust me
Matt don't you have that for Sublime too?
Yeah
which font do i take?
I like mono
Fira Code Medium for editor, Cantarell for outside editor imo
I use retina
I use fira code retina in the editor, and jetbrains mono for everything else
yeah retina's nice, but it just isn't as thick as I like
you have your IDE in monospaced?
I don't see the box in here Sx, or am I blind?
🤢
oh my god
Thats not the editor
your atom dark is so much different from mine
Go under editor font
🤮
I have high contrast on LEFTY
@errant geyser Search for ligatures it's the first thing
how can one live looking at that font?
oh yeah I got it
it's almost as bad as having your entire computer in Comic Sans
Superior theme
get out
@heady birch Die
😫
That.... is not a query
yeah that is a terrible query
enum
also who tf queries tables directly like that?
Do you not have ultimate?
you know how easily you can fuck that up?
CREATE_MODEL_TABLE_QUERY_STATEMENT
@Command("army")
class ArmyCommand(private var plugin: ZombFields) : CommandBase() {
private val inventory: Gui = Gui(plugin, InventoryType.HOPPER, "Warriors")
init {
val pane: GuiItem = GuiItem(ItemBuilder(ItemStack(Material.STAINED_GLASS_PANE, 1, 1)).setName("").build())
inventory.setItem(0, pane)
inventory.setItem(1, GuiItem(ItemBuilder(ItemStack(Material.SKULL_ITEM,1, 0)).setName("Archers").build()))
inventory.setItem(2, GuiItem(ItemBuilder(ItemStack(Material.SKULL_ITEM, 1, 3)).setName("Warriors").build()) { event ->
event.isCancelled = true
})
inventory.setItem(3, GuiItem(ItemBuilder(ItemStack(Material.SKULL_ITEM, 1, 4)).setName("Bombers").build()))
inventory.setItem(4, pane)
inventory.setDefaultClickAction(GuiAction{event -> event.isCancelled = true})
}
@Default
fun defaultCommand(sender: CommandSender) {
}
}``` ok now that I know init {} exists, is that better Sx?
personally, I let ORM software do the queries for me
That feature of ultimate is a blessing
yeah ultimate is way better
lang comment?
you know how easily you can fuck that up?
@jovial warren ?
Why are you specifying types
being able to make everything I want in the same place is amazing
Thought I had to Sx
@jovial warren ?
raw queries Niall
Yeah highlights the string with the language syntax
@topaz bay Awesome
it doesn't always work though
Even checks the DB for columns and stuff
Its pretty great
if you get one part of that query wrong, you could end up fucking up the whole database and there's no turning back
as I said, personally, I prefer to let ORM software do the querying for me
GuiAction{event -> event.isCancelled = true})ew
where's that from?
also tf is that
where's the bracket at the beginning?
@jovial warren https://www.udemy.com/course/java-the-complete-java-developer-course/ you said that you used this right?
yeah
wdym the bracket at the beginning?
how much out of 10 is this
Tim Buchalka is an amazing teacher
wdym the bracket at the beginning?
shouldn't it beGuiAction()?
GuiAction { it.isCancelled = true } better
sorry looked a lot like Java, couldn't recognise it lol
@obtuse gale 11/10
it literally teaches you everything
from the basics, to in-depth OOP, to Java FX, to concurrency, to HTTP and Database querying
if you get one part of that query wrong, you could end up fucking up the whole database and there's no turning back
@jovial warren 🙁
well that sounds positive
Who does it on a production database
you'd be surprised
im gonna buy it
this is human beings we're talking about here Niall
Lol
im gonna buy it
go for it
I can suggest some free ones as well if you want
if theyre good
I might actually do that course
JetBrains Academy (free online course): https://www.jetbrains.com/academy/
Codeacademy (free online course): https://www.codecademy.com/learn/learn-java
University of Helsinki (free online course): https://java-programming.mooc.fi/
Basic Java Tutorials: https://docs.oracle.com/javase/tutorial/
Introducing JetBrains Academy – a hands-on platform for learning to program. Learn to program by creating working applications step by step in an interactive environment integrated with JetBrains IDEs.
Utilize our Java tutorial to learn the basics of the popular language, including Java objects, in this introductory course.
Helsingin yliopiston kaikille avoin ja ilmainen ohjelmoinnin perusteet opettava verkkokurssi. Kurssilla perehdytään nykyaikaisen ohjelmoinnin perusideoihin sekä ohjelmoinnissa käytettävien työvälineiden lisäksi algoritmien laatimiseen. Kurssille osallistuminen ei vaadi ennakko...
yeah do it Niall
Get me up to date with java 8 and 9
how good is the jet brains one?
it uses Java 11 as well
and is it good to start with?
no idea
I think it's alright
there's no video tutorials afaik
but it's very interactive
really feel like the udemy is best if you want to learn a ton completely from scratch
thats true
the paid one I sent you uses IntelliJ
Theres also a discord for java help if you want the name of it (I'm not allowed to link it)
@rotund egret id like that
https://www.udemy.com/course/java-the-complete-java-developer-course/ this uses IntelliJ?
Together Java
They have good support, and they do code review as well.
Really informative folk
TG helped me a lot early on. Though if its for Spigot exclusively you get told to piss off into one channel nobody goes into iirc
Tim Buchalka has like 30+ years of experience or something
https://learnprogramming.academy I believe
when I bought it, it was £9.99
idk whether they still have the deal where you can get any course for £9.99 if you're a new user or not
oh i see
hm yeah if i click take course it just sends me to udemy
and there it is just 15
but 15 is cheap as fk already
by the way if any of you need some graphic designs done for free you can hmu
thats a thing i am good at
If you wanna design something for me to try and recreate thatd be great.
Trying to get better at it :^)
@rotund egret uhmm okay 😂
designing requires creativity though you gotta remember that one
@rotund egret yeah i think its a bad idea to recreate stuff
I’ve been using IntelliJ for a while now, but what does it have over eclipse?
I can design, recreation is for getting used to the tools
Through recreation I now am familiar with the shape tools, pen tool, gradients, text settings, adding fonts, channel splitting, and a few others.
what kind of design do you want to learn
@rotund egret you creative?
To a degree, I did design my logo currently.
It's not full of creative design, but it was my idea through and through
fair enough
yeah my avatar shows you what my creativity span is
literally all that is, is a 500x500 area with an orange background and a large "B" in Bernard MT Condensed
I'd like to say that's the Bardy orange, but I prefer #ff6600, and that definitely isn't #ff6600
orange ugly
get out
I'd like to work on a banner type thing if possible, but anything goes honestly.
also, the name and design of just about everything I have made shows you my creativity span
BardyBot came from my username, my name came from something I overheard years ago and maybe misheard slightly and decided to copy
I also considered orange for mine, since blue and orange are complementary, but it didn't look great
BardyBot's messages are based off of Rythm, in fact, originally, I was using Rythm's exact messages
plagarism
I only changed the messages slightly because I wanted to at least make something different
@rotund egret how i learnt it is just doing. look on behance and dribbble, take things you like and try to create something similar
but I don't have the patience for creativity anyway
I like to call myself a "manipulator", meaning I take things and change them around to my liking
and that includes human beings
Uhoh
r/yesyesyesno
lol
ah okay, so https://www.reddit.com/r/yesyesyesno/comments/hcv80i/bob_no/ is what this is then
okay I think after https://www.reddit.com/r/yesyesyesno/comments/hcj8cy/why_mom/ I've had enough of this already lol
hey what should I add to BardyBot next?
I'm considering trying to use speech recognition to turn him in to a discord version of something like google home or the amazon echo
=fuck {ping}
Hey fuck you {ping}
Well your suggestion isn't as childish but it'll take you much longer
Me: Hey Callum
Bot: What can I do for you?
Me: Can you play me x song please?
Bot: Sure I can, coming right up
That would be cool I guess
that would be very cool
dialogflow
Machine learning AI or go away
4 year BardyStream™️ of teaching his bot english
Worth it in the end
dialogflow?
you mean https://voice.mozilla.org/en right?
when I said speech recognition, I mean speech recognition
like actual speech
or deep speech, that's what I mean
dialogflow has that too
what STT?
mhmm
thing is though, it's not OS
I personally don't like depending on CS projects
how would open source machine learning models even work
if they're constantly being updated
By google
isn't it only available on google cloud then?
https://cloud.google.com/speech-to-text this also exists
Why not just pass it straight into dialogflow...
good idea
guess I gotta learn how this thing works then
I heard it was a pain to setup
Matt said he had problems with it
Once you do that, its not that hard
intents?
Yes
what do they do?
They are basically descriptions of input and output
all the stuff you gotta give it
This for example, is the default welcome intent
(plus some inputs I added)
It will detect those basic phrases, and return whichever response is appropriate
There is no concept of waking
You could define an intent that detects a certain phrase
and it'll what I'm gonna call "wake" to that word?
????
It only listens when the president is on the line 👀
also, could I possibly use some sort of TTS engine to respond with?
or better yet, just record my own voice
It has that built in
Yeah discord already has tts
true
test
Yeah, but dialog flow can return audio
but it sounds horrible
No it doesnt
I want this guy to sound more normal
Why not play the audio through the bot?
BRUH
Go play audio with these settings
LOL
Its like.... breathy and scary
omfg
where do I find that?
Settings > Speech
yeah that really isn't very good
also, where is en-GB?
Doesn't have it
also, turn it down to 0.25 speed

also, none of these voices sound any good
@EventHandler
public void onEnchantment(PrepareItemEnchantEvent event) {
Player player = event.getEnchanter();
int newXP = getOffers() - 1;
}```
I want to reduce the required level of 30 to enchant with the highest change by 1
Nice, now make that make sense. Also ^
Pleeeeease give me a good intellij theme/scheme i've spent one hour trying to find a good dark theme and a good scheme for java 🙂
Atom One Dark Material UI with Orange highlight colour on high contrast. JetBrains Mono with ligatures for font
alright i'll test those thanks !
monospaced outside of the editor looks doodoo
outside the editing window thingy I mean
the editor
monospaced looks good when editing code, but outside of that it looks doodoo
Any1 knows how to decrease the required enchanting xp with 1 level?
So in an enchantment table
For the enchantment you normally need 30, you need 29 if This happens
you use monospaced for windows font as well?
I used to have the system font set to fira
Didn't have values for everything though, so some things were those missing character boxes
Just realized i use Fira lol
Also fira retina is thicc
I use whatever's default usually
i3 uses monospaced I think
waterfox uses whatever the fuck
discord does its own thing
also @ocean quartz what kind of a name for a project is "Ensinar1" lol
why the 1? did you fuck up the original project? lol
It's in portuguese, it's like Lesson1, it's just a test project that i've had for far too long
ah okay
fair enough I guess
having any non-alphabetic character in a project, class, or package name is just no though lol
there is no other words to describe it, it's just no
It's a test project lol
@jovial warren thats not even slightly a thing
Where do I start coding? who are some of the best youtubers?
I want to do Configs, MySQL, GUIS, World Generators
I basicly want to crate a skyblock plugin where I put a Prison Mine in the center of it
using Mines API
lmao
@forest forum I could teach you some stuff
bet
who are some of the best youtubers?
no
I'll admit some of the college professors do put out some fire videos on java programming.
But not minecraft plugin developers.
@forest forum Simon, if you're familiar with Java read up on the basics of bukkit, experiment. If you're not, start by learning java
Have I had a not-normal one for years or something
Cause it just changed to that one over night and I hate it
That looks like the font I had before I changed it
That's the default one
Ugh god knows what font I had before
So does JetBrains Mono 👀
Changing that font just changes it for the UI and not for the code editor itself
Editor -> font
I'm changing my editor font between Mono and Fira and I don't see a difference
maybe mono was heavily inspired by fira
@forest forum other’s have briefly touched on it, but please do not use youtube to learn programming, especially spigot related, and to a lesser extent, java itself. ALL spigot tutorials on youtube are riddled with errors, terrible practices, and inexperienced suggestions. Most java tutorials also follow this trend. I assume most other language tutorials, once again, also have these qualities. The only reliable source of information is the official oracle docs. That doesn’t mean you can’t use other resources, just use them knowing that it may not be the best way; if you care, research it.
Pig you need to make that part of the FAQ, and then shamelessly plug the upcoming HC YT
That font is stupid
I’ve already started with gradle
Can I have a link to that if/when its done? My friend still uses Maven because "its too hard to switch"
shameless self promotion time
click blog
it’s not really a blog but not sure what to call it
lol
It's really not
Well its something new for sure
Ok here lemme send u something
How would you turn this data into a mysql query
....
I'm not seeing any finals, why's that
@jovial warren im taking the course you mentioned yesterday atm
but which jdk version are you guys using
I use 8 still
though I use Kotlin SDK with that
but I should really move to 11, though MC is still in 8
depends what version you're targeting
1.8-1.12 is fussy and will crash when using 11 afaik
any newer versions don't matter
Yeah then il use 11
in that course Tim is sure not to use any Java 11 only features for most of the course, and the points where he does, he'll tell you explicitly
just tried to use java -jar to run my JAR file and it says there's "no main manifest attribute"
any ideas?
Add mainClassName = "path" to your gradle
where abouts?
Anywhere
it doesn't seem to be resolved in IntelliJ
does it need to be in a specific block?
alright
Doesn't need to be in any block
Actually i think you also need to add the plugin id 'application'
will that generate a manifest and have shadowjar bundle it in to the JAR?
also which path do I use? the source path or the build path?
It should
The path to the main class
my main class is in src/main/kotlin/dev.bombardy.bardybot/Bot.kt
though it's a main method, not a main class
dev.bombardy.bardybot.BotKt
that's the path?
Yeah
Could not find method mainClassName() for arguments [dev.bombardy.bardybot.BotKt] on root project 'BardyBot' of type org.gradle.api.Project. 🤔
Even with the application plugin?
I've just got id 'application' in the plugins block
is that enough or does it need a version?
Should be enough
should I call in a gradle expert
@topaz bay you should know the answer to this: how can I set the main class and have it bundle the manifest in to the JAR file generated by shadowJar?
Application plugin
how do you configure that?
Could not find method mainClassName() for arguments [dev.bombardy.bardybot.BotKt] on root project 'BardyBot' of type org.gradle.api.Project. thinking
Its supposed to be dev.bombardy.bardybot.Bot
What does it say when you try that?
same thing from what I remember
Just send the build file
Change it to double quotes, and clean build
it's BotKt.class for the main class
also, clean build doesn't work after changing it to double quotes
i have just mainClassName = "me.mattstudios.kipp.MainKt" and works fine
https://github.com/BomBardyGamer/BardyBot/blob/master/src/main/kotlin/dev/bombardy/bardybot/Bot.kt#L134 is my main function
Oh, you need args
which I'm guessing that's the part that compiles to BotKt.class
What's the problem?
I can run it just fine normally without args though?
What's the problem?
trying to build a jar file from my project and it says the main class doesn't exist
even though it does
How do I get placeholders via mysql to another server
Idk how, when using JVM Kotlin you should need the args
you don't since 1.3
^^^^
On 1.3, if i remove args, IJ won't even show it
keybind for that?
^^^^
File level
Your fault
what part of it did I do wrong though?
It
I actually have no idea what I did wrong here
okay now for some reason I've restarted IDEA and it's giving me yellow warnings on the plugins and repositories blocks
actually ik why that is
it's tried to build on startup and failed
removing the mainClassName line makes it able to build, fixing the errors
still can't find anything though
still Could not find method mainClassName() for arguments [dev.bombardy.bardybot.BotKt] on root project 'BardyBot' of type org.gradle.api.Project.
idk wtf is going on
this is ridiculous
still same issue
the way I fixed the manifest issue is by adding:
manifest {
attributes 'Main-Class': 'dev.bombardy.bardybot.BotKt'
}
to my shadowJar block
I've never had this issue
probably because you were using mainClassName = 'fully.qualified.class.Path'
which is the correct way to do it
rather than using the method
I'm pretty sure I've done both
Groovy is stupidly non strict about this shit
Except for when it comes to strings
That shit gets annoying
How does one register an existing project as gradle?
gradle init
Not what I mean
Piggy converted my gh source to gradle, and I've pulled
But the ide doesn't recognize that it's gradle
how it knows that it's a gradle project is in the .idea folder there's a gradle.xml file
try just deleting your .idea folder and restarting IJ
@hot hull
Frosty just restart IJ with the project open and you can import it as a Gradle project
Which one is the right one?
Youre supposed to right click on the build.gradle
Theres a button to add it
@hot hull wrong import btw
I mean yea, which one is the right one?