Jump to content




[mc 1.6.x] Openperipheral


1184 replies to this topic

#1161 Larroke

  • Members
  • 3 posts

Posted 19 March 2014 - 10:58 AM

Hey Mikee

How about an enchantment version of the terminal glasses with an activate keybinding? Going along the same lines of the convenience of the reading glasses / reading I enchant from bibliocraft.


Thanks

#1162 Pharap

  • Members
  • 816 posts
  • LocationEngland

Posted 19 March 2014 - 02:19 PM

View Posttheoriginalbit, on 19 March 2014 - 04:57 AM, said:

View PostPharap, on 19 March 2014 - 03:57 AM, said:

Looks like a useful mod, it's a shame the documentation isn't better though.
The problem with documentation is that even we don't know everything our mod does, so its impossible to write an extensive, accurate, and up-to-date online documentation; what we've got is the only way to be able to do this.

Is that because it's just a wrapper for another API or because it uses reflection to investigate other mods or something?

Surely using peripheral.getMethods() would be enough to tell you what methods are exposed and then you can just list them along with what they do and what parameters/returns are involved in calling them.

#1163 Shotexpert

  • New Members
  • 1 posts

Posted 19 March 2014 - 04:09 PM

Showing of terminal glasses just as an Example of what is possible when You combine Mods and Plugins together for cool results.
(Do not bother asking for the Code as its privite at this time due to a lot of specific back end code).

https://www.youtube....h?v=I7Z4b_aHi3U

#1164 Engineer

  • Members
  • 1,378 posts
  • LocationThe Netherlands

Posted 19 March 2014 - 04:12 PM

View PostPharap, on 19 March 2014 - 02:19 PM, said:

View Posttheoriginalbit, on 19 March 2014 - 04:57 AM, said:

View PostPharap, on 19 March 2014 - 03:57 AM, said:

Looks like a useful mod, it's a shame the documentation isn't better though.
The problem with documentation is that even we don't know everything our mod does, so its impossible to write an extensive, accurate, and up-to-date online documentation; what we've got is the only way to be able to do this.

Is that because it's just a wrapper for another API or because it uses reflection to investigate other mods or something?

Surely using peripheral.getMethods() would be enough to tell you what methods are exposed and then you can just list them along with what they do and what parameters/returns are involved in calling them.
They check if a tileentity has a certain interface, then they add the registered peripherals which mounts that block. Considering there are tonnes of mod it's undoable to document everything.

#1165 Pharap

  • Members
  • 816 posts
  • LocationEngland

Posted 19 March 2014 - 08:26 PM

View PostEngineer, on 19 March 2014 - 04:12 PM, said:

View PostPharap, on 19 March 2014 - 02:19 PM, said:

View Posttheoriginalbit, on 19 March 2014 - 04:57 AM, said:

View PostPharap, on 19 March 2014 - 03:57 AM, said:

Looks like a useful mod, it's a shame the documentation isn't better though.
The problem with documentation is that even we don't know everything our mod does, so its impossible to write an extensive, accurate, and up-to-date online documentation; what we've got is the only way to be able to do this.

Is that because it's just a wrapper for another API or because it uses reflection to investigate other mods or something?

Surely using peripheral.getMethods() would be enough to tell you what methods are exposed and then you can just list them along with what they do and what parameters/returns are involved in calling them.
They check if a tileentity has a certain interface, then they add the registered peripherals which mounts that block. Considering there are tonnes of mod it's undoable to document everything.

Looking at the 'documentation script' all open peripherals are guaranteed to have the getAdvancedMethodsData() function.
Instead of just providing a script that people have to read through to figure out which function(s) all open peripherals expose, it would be nice if there was a list of the functions with their parameters/returns on this thread.
I'm not saying get rid of the script or list all the tile entity exposed functions, nor am I saying get rid of the mod's internal documentation.
What I am saying is that it would be good to have clearer documentation without having to download the mod first or having to sit and watch a 17 minute video.

Also, the first post in the thread doesn't actually say what the mod does (discounting the videos).

#1166 theoriginalbit

    Semi-Professional ComputerCrafter

  • Moderators
  • 7,332 posts
  • LocationAustralia

Posted 19 March 2014 - 10:36 PM

View PostPharap, on 19 March 2014 - 02:19 PM, said:

Is that because it's just a wrapper for another API or because it uses reflection to investigate other mods or something?
We register all TileEntites as a peripheral, we then check if they conform to an Interface, then use the interface (or reflection) to interact with the tile.

View PostPharap, on 19 March 2014 - 08:26 PM, said:

Looking at the 'documentation script' all open peripherals are guaranteed to have the getAdvancedMethodsData() function.

Yes they are, that function provides a list of all the methods, a small description of the methods purpose, the arguments it needs, and a small description for each argument.

View PostPharap, on 19 March 2014 - 08:26 PM, said:

Instead of just providing a script that people have to read through to figure out which function(s) all open peripherals expose, it would be nice if there was a list of the functions with their parameters/returns on this thread.

No, nothing will be added to this thread, Mikee isn't active enough, it'd have the same problem as previously, it'd get outdated and be the cause of massive headaches. As for providing "a list of functions" I've said it before and I'll say it again, this is impossible. Why? Well it is because we look for interfaces that are present in Mods APIs, meaning that any mod can inherit these; for example, we look for Buildcrafts IPowerReceptor, which allows machines to interact with a BuildCraft power network. What machines use this interface? we have no clue! I know there's machines in Buildcraft that use it and theres machines and storage in ThermalExpansion that use it, but what about all those other mods out there that use the Buildcraft API? we simply do not have the time to go through every single possible mod and all its items each time we add a new interface to see if we now support it or not, not to mention the we had problems with keeping the last website up-to-date! If you want this magical list of everything our open-ended mod supports, feel free to go ahead and make it, you won't go unappreciated. but one thing is for sure, we won't be doing it any time in the foreseeable future.

View PostPharap, on 19 March 2014 - 08:26 PM, said:

nor am I saying get rid of the mod's internal documentation.

well that's good, 'cause we wouldn't anyway, that documentation is there for us, which has the other effect of being there for you guys through the getAdvancedMethodData function

View PostPharap, on 19 March 2014 - 08:26 PM, said:

What I am saying is that it would be good to have clearer documentation without having to download the mod first or having to sit and watch a 17 minute video.
oh believe me, the video would be much longer than 17 minutes!

View PostPharap, on 19 March 2014 - 08:26 PM, said:

Also, the first post in the thread doesn't actually say what the mod does (discounting the videos).
Chances are by now that if someone doesn't know what this mod does, they won't want to use it, also we do have a description on the website, which is where a lot of users get it from. The reason that all information has been removed from the original post is that prior to its recent update it was massively behind, it was more outdated than our online documentation (when it was around), and the problem was that Mikee was no longer active on the forums so it had no way to be updated — I'd been pestering him for months to update it, and I'm on the OpenMods team! It took the power of Lyqyd to get him to come on and update it.

#1167 MechE_

  • Members
  • 8 posts
  • LocationCalifornia

Posted 19 March 2014 - 11:41 PM

So, I have done some additional testing. The format for my report: initial conditions/ parameters, inventories tested, results.

Test 1:

Initial Conditions: Minecraft with addtional mods installed, apart from computercraft; open peripherals

Parameters:
  • Forge: forge-1.6.4-9.11.1.965
  • OpenModsLib: OpenModsLib-0.3.jar
  • OpenPeripheralCore: OpenPeripheralCore-0.3.2.jar
  • OpenPeripheral-Addons: OpenPeripheralAddons-0.1.2.jar
Inventories Tested:

Double chest; forestry Apiarists Chest

Results:

Failed for the double chest as mentioned earlier, however it was successful for the Apiarists chest. The apiarists chest has an inventory of 125 slots, and returned items without errors for the slots which i tested ( 25, 27,60,125)
---------------------
Test 2:

Initial Conditions: Minecraft with addtional mods installed, apart from computercraft; open peripherals

Parameters:
  • Forge: forge-1.6.4-9.11.1.965
  • OpenModsLib: OpenModsLib-0.4b.jar
  • OpenPeripheralCore: OpenPeripheralCore-0.3.3.jar
  • OpenPeripheral-Addons: OpenPeripheralAddons-0.1.3.jar
Inventories Tested:

Double chest; forestry Apiarists Chest

Results:

Same as above
---------------------
Test 3:

Initial Conditions: Clean version of Minecraft with only computercraft; open peripherals

Parameters:
  • Forge: forge-1.6.4-9.11.1.965
  • OpenModsLib: OpenModsLib-0.3.jar
  • OpenPeripheralCore: OpenPeripheralCore-0.3.2.jar
  • OpenPeripheral-Addons: OpenPeripheralAddons-0.1.2.jar
Inventories Tested:

Double chest.

Results:

Failed for the double chest, and does not appear to be an issue created by another mod.
---------------------
Test 4:

Initial Conditions: Minecraft with addtional mods installed, apart from computercraft; open peripherals

Parameters:
  • Forge: forge-1.6.4-9.11.1.965
  • OpenModsLib: OpenModsLib-0.2.jar
  • OpenPeripheralCore: OpenPeripheralCore-0.3.1.jar
  • OpenPeripheral-Addons: OpenPeripheralAddons-0.1.1.jar
Inventories Tested:

Double chest; forestry Apiarists Chest

Results:

Successful for both inventories tested.

-------------
As a side question. For the latest version using OpenModsLib 0.4b, how is the new feature below intended to work?
I called the method using the in game documentation and it displayed 2 new arguments using strings both of which state -(string)from: direction. Is it supposed to display a to string?

  • Feature: added InventoryUtils.swapStack (normal and sided inventory version)

Posted Image


#1168 theoriginalbit

    Semi-Professional ComputerCrafter

  • Moderators
  • 7,332 posts
  • LocationAustralia

Posted 19 March 2014 - 11:50 PM

View PostMechE_, on 19 March 2014 - 11:41 PM, said:

-test snip-
Awesome! Thank you very much! So it looks like the problem has popped up somewhere in the last few versions, I'll see if I can track it down :)

View PostMechE_, on 19 March 2014 - 11:41 PM, said:

-snip question-
okay so as stated by the 'feature' it means that you can give it slot numbers to swap, however you can also give it the direction (when dealing with certain inventories) as a string such as "up", "down", etc.

View PostMechE_, on 19 March 2014 - 11:41 PM, said:

-image snip-
how do you play with that horrible font bug?! haha.

#1169 Pharap

  • Members
  • 816 posts
  • LocationEngland

Posted 20 March 2014 - 06:01 PM

View Posttheoriginalbit, on 19 March 2014 - 10:36 PM, said:


No, nothing will be added to this thread, Mikee isn't active enough.
Fair enough

View Posttheoriginalbit, on 19 March 2014 - 10:36 PM, said:

we simply do not have the time to go through every single possible mod and all its items each time we add a new interface to see if we now support it or not
At no point did I ask you to do that, I have no idea why people are getting the idea that I am asking for other mod's interfaces to be documented.
If there are absolutely no functions that are exposed by all TileEntity-Peripherals then there is nothing to document other than the mod's functionality.

View Posttheoriginalbit, on 19 March 2014 - 10:36 PM, said:

If you want this magical list of everything our open-ended mod supports,

Again, I was never asking for that

View Posttheoriginalbit, on 19 March 2014 - 10:36 PM, said:

View PostPharap, on 19 March 2014 - 08:26 PM, said:

nor am I saying get rid of the mod's internal documentation.

well that's good, 'cause we wouldn't anyway, that documentation is there for us, which has the other effect of being there for you guys through the getAdvancedMethodData function
I shall ignore that comment

View Posttheoriginalbit, on 19 March 2014 - 10:36 PM, said:

also we do have a description on the website

If you mean http://www.openmods.info/, I for one cannot find it.

View Posttheoriginalbit, on 19 March 2014 - 10:36 PM, said:

Chances are by now that if someone doesn't know what this mod does, they won't want to use it
In that case I shall completely forget about this mod.

Edited by Pharap, 20 March 2014 - 06:01 PM.


#1170 Lyqyd

    Lua Liquidator

  • Moderators
  • 8,464 posts

Posted 20 March 2014 - 06:47 PM

Why on earth would you even consider approaching the documentation problem from the perspective of individual machines? You've already as much as said the correct answer, so it seems odd that you keep talking about how it is impossible! :P

The solution would seem to be to document your support for the interfaces. Formatted comments in the code supporting those interfaces (unless you expose them directly somehow? That would kill this idea) that could be used to generate the documentation. It wouldn't be quite as user-friendly as a machine-by-machine breakdown, but something like, "All tile entities with Fluid tanks support these peripheral methods:" might be nice.

#1171 MaienM

  • New Members
  • 1 posts

Posted 21 March 2014 - 11:58 PM

View Posttheoriginalbit, on 12 December 2013 - 07:35 PM, said:

View Postdariys, on 12 December 2013 - 09:54 AM, said:

I'm not sure the actual error - it's not bubbling up to the running thread. Coroutine.resume(...) is returning a status of false, and first argument of a line number. In this case, arg1 is 'coroutineTest:5: 0'. Line 5 refers to the condenseItems call. I have no idea what the 0 refers to.
Ugh that stupid bug with the error messages, that was fixed SO long ago :( can you check the server's (or client if its not on a server) log and see if there is any more information there (I cannot remember if there is or not)

Also what version of OpenPeripheral do you have, I'll run my own tests.

I'm having the same issue. A call (to getAllStacks on a player interface/chest, presumable other as well) is working fine in the main thread, but is returning the error '1' when called from a coroutine.

I've tested this on both SMP and SSP.

I'm running FTB Monster 1.1.0, which uses:
MC 1.6.4
FML 6.4.49.965
Forge 9.11.1.965
CC 1.5.8
OpenMods 0.2
OpenPeripheralCore 0.3.1
OpenPeripheralAddons 0.1.1

No relevant error messages are shown on the server/client.

I've also tried the latest versions from jenkins, but this made my MC crash. I guess they need 1.7.4? Or I did something wrong, I honestly didn't spend all that long trying.

If there is anything relevant that I missed, or anything I can do to test this/work around this, let me know.

#1172 MechE_

  • Members
  • 8 posts
  • LocationCalifornia

Posted 22 March 2014 - 05:05 PM

View Posttheoriginalbit, on 19 March 2014 - 11:50 PM, said:

View PostMechE_, on 19 March 2014 - 11:41 PM, said:

-test snip-
Awesome! Thank you very much! So it looks like the problem has popped up somewhere in the last few versions, I'll see if I can track it down :)

View PostMechE_, on 19 March 2014 - 11:41 PM, said:

-snip question-
okay so as stated by the 'feature' it means that you can give it slot numbers to swap, however you can also give it the direction (when dealing with certain inventories) as a string such as "up", "down", etc.

View PostMechE_, on 19 March 2014 - 11:41 PM, said:

-image snip-
how do you play with that horrible font bug?! haha.

Hopefully its not too hard to track down.

Ill have to play around with that feature. I was hoping it was a fix to another issue i have been having with the method pushItemIntoSlot, although it was a strecth since its swapStacks method...,at any rate, I cannot push into Invenotries on the short side of double chests.

There's a font bug? what font bug? :P Posted Image

Lol Normally I dont play with the bug, but I was just testing so I didnt bother with the extra step.

Posted Image

#1173 theoriginalbit

    Semi-Professional ComputerCrafter

  • Moderators
  • 7,332 posts
  • LocationAustralia

Posted 22 March 2014 - 10:04 PM

View PostMechE_, on 22 March 2014 - 05:05 PM, said:

Hopefully its not too hard to track down.
So the other day I didn't have the time to track the problem down with my large workload at uni, so I made an issue so another developer could look at it; it was fixed not long after.

#1174 MechE_

  • Members
  • 8 posts
  • LocationCalifornia

Posted 22 March 2014 - 10:08 PM

Also, sorry for making you endure the pain that ensues,the horrible font bug.

#1175 theoriginalbit

    Semi-Professional ComputerCrafter

  • Moderators
  • 7,332 posts
  • LocationAustralia

Posted 22 March 2014 - 10:09 PM

View PostMechE_, on 22 March 2014 - 10:08 PM, said:

Also, sorry for making you endure the pain that ensues,the horrible font bug.
haha that's okay, it wasn't a problem for me, I just didn't know how you put up with it long term! :P

#1176 MechE_

  • Members
  • 8 posts
  • LocationCalifornia

Posted 22 March 2014 - 10:10 PM

View Posttheoriginalbit, on 22 March 2014 - 10:04 PM, said:

View PostMechE_, on 22 March 2014 - 05:05 PM, said:

Hopefully its not too hard to track down.
So the other day I didn't have the time to track the problem down with my large workload at uni, so I made an issue so another developer could look at it; it was fixed not long after.

Hoozah! Thanks

#1177 MechE_

  • Members
  • 8 posts
  • LocationCalifornia

Posted 22 March 2014 - 10:25 PM

View Posttheoriginalbit, on 22 March 2014 - 10:09 PM, said:

View PostMechE_, on 22 March 2014 - 10:08 PM, said:

Also, sorry for making you endure the pain that ensues,the horrible font bug.
haha that's okay, it wasn't a problem for me, I just didn't know how you put up with it long term! :P

Yeah. Still looking for a more permanent solution, but as you know.....other things tend to keep one busy, and semi broken things get pushed to the bottom of the to do list. Ive got a whole week off though, so its time for me to tackle those things; i also have to figure out how to get back into my server, i locked myself out of ssh. I accidentally changed the passwords from within samba.... apparently the server didn't like that. By accidentally i mean i didnt know any better. lol >< Oh the list goes on. lol

#1178 mckerrnel

  • Members
  • 13 posts

Posted 23 March 2014 - 07:11 AM

Would it be possible to add some Google Glasses or something that you had to make with a wireless modem? Something you could link to another wireless modem, and that you could tag?

For example, you give out up to 16 Wireless Glasses to two players. One is tagged either with a number or colour, let's say black, and the other is tagged with white. From the glasses we could read the black ones from the linked modem into the computer and determine things like X, Y Z (decimal cords, not just integer), chunk cords, player name, item ID's in armour slots, and item ID's in the hotbar slots, health, armour level, etc.

This would make mini-game creation a dream.

#1179 CometWolf

  • Members
  • 1,283 posts

Posted 23 March 2014 - 08:33 PM

It's like you didn't bother to read up on this mod at all lol. The terminal glasses already cover most of that, while sensors could be used for the rest.

#1180 mckerrnel

  • Members
  • 13 posts

Posted 23 March 2014 - 09:24 PM

View PostCometWolf, on 23 March 2014 - 08:33 PM, said:

It's like you didn't bother to read up on this mod at all lol. The terminal glasses already cover most of that, while sensors could be used for the rest.

Where exactly should I be looking? http://www.openperipheral.info/ has nothing but download links and change logs. Computercraft.info doesn't provide anything for openperipherals in the Peripherals and AddOns, FTB wiki has a stub page for the entire mod. The only info I have is from NEI and it doesn't tell you how to use it.

Google search for OpenPeripherals provides a couple of forum threads for the general mod, some youtube videos, and a link to openperipheral.info. For someone coming in new, there isn't a lot of easily identifiable sources of info.

Maybe I didn't look hard enough, I don't know, but if you can point me to somewhere I can read up on this, I'd be happy to do so.

Edited by mckerrnel, 23 March 2014 - 11:13 PM.






1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users